Loading api/system-current.txt +12 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android { field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS"; field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER"; field public static final String ACCESS_TV_TUNER = "android.permission.ACCESS_TV_TUNER"; field public static final String ACCESS_VIBRATOR_STATE = "android.permission.ACCESS_VIBRATOR_STATE"; field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING"; field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY"; field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE"; Loading Loading @@ -9097,6 +9098,17 @@ package android.os { @IntDef(flag=true, prefix={"RESTRICTION_"}, value={android.os.UserManager.RESTRICTION_NOT_SET, android.os.UserManager.RESTRICTION_SOURCE_SYSTEM, android.os.UserManager.RESTRICTION_SOURCE_DEVICE_OWNER, android.os.UserManager.RESTRICTION_SOURCE_PROFILE_OWNER}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface UserManager.UserRestrictionSource { } public abstract class Vibrator { method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener); method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public boolean isVibrating(); method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); } public static interface Vibrator.OnVibratorStateChangedListener { method public void onVibratorStateChanged(boolean); } public class WorkSource implements android.os.Parcelable { ctor public WorkSource(int); ctor public WorkSource(int, @NonNull String); api/test-current.txt +11 −0 Original line number Diff line number Diff line Loading @@ -2609,6 +2609,17 @@ package android.os { field @NonNull public static final android.os.Parcelable.Creator<android.os.VibrationEffect.Waveform> CREATOR; } public abstract class Vibrator { method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener); method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public boolean isVibrating(); method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); } public static interface Vibrator.OnVibratorStateChangedListener { method public void onVibratorStateChanged(boolean); } public class VintfObject { method public static String[] getHalNamesAndVersions(); method public static String getSepolicyVersion(); Loading core/java/android/hardware/input/InputManager.java +28 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package android.hardware.input; import android.annotation.CallbackExecutor; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.SdkConstant; Loading Loading @@ -51,6 +52,7 @@ import com.android.internal.os.SomeArgs; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.concurrent.Executor; import java.util.List; /** Loading Loading @@ -1235,6 +1237,32 @@ public final class InputManager { return true; } @Override public boolean isVibrating() { throw new UnsupportedOperationException( "isVibrating not supported in InputDeviceVibrator"); } @Override public void addVibratorStateListener(@NonNull OnVibratorStateChangedListener listener) { throw new UnsupportedOperationException( "addVibratorStateListener not supported in InputDeviceVibrator"); } @Override public void addVibratorStateListener( @NonNull @CallbackExecutor Executor executor, @NonNull OnVibratorStateChangedListener listener) { throw new UnsupportedOperationException( "addVibratorStateListener not supported in InputDeviceVibrator"); } @Override public void removeVibratorStateListener(@NonNull OnVibratorStateChangedListener listener) { throw new UnsupportedOperationException( "removeVibratorStateListener not supported in InputDeviceVibrator"); } @Override public boolean hasAmplitudeControl() { return false; Loading core/java/android/os/IVibratorService.aidl +4 −0 Original line number Diff line number Diff line Loading @@ -18,11 +18,15 @@ package android.os; import android.os.VibrationEffect; import android.os.VibrationAttributes; import android.os.IVibratorStateListener; /** {@hide} */ interface IVibratorService { boolean hasVibrator(); boolean isVibrating(); boolean registerVibratorStateListener(in IVibratorStateListener listener); boolean unregisterVibratorStateListener(in IVibratorStateListener listener); boolean hasAmplitudeControl(); boolean[] areEffectsSupported(in int[] effectIds); boolean[] arePrimitivesSupported(in int[] primitiveIds); Loading core/java/android/os/IVibratorStateListener.aidl 0 → 100644 +29 −0 Original line number Diff line number Diff line /* ** Copyright 2020, 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 android.os; /** * Listener for vibrator state. * {@hide} */ oneway interface IVibratorStateListener { /** * Called when a vibrator start/stop vibrating. * @param state the vibrator state. */ void onVibrating(in boolean vibrating); } No newline at end of file Loading
api/system-current.txt +12 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android { field public static final String ACCESS_SHORTCUTS = "android.permission.ACCESS_SHORTCUTS"; field public static final String ACCESS_SURFACE_FLINGER = "android.permission.ACCESS_SURFACE_FLINGER"; field public static final String ACCESS_TV_TUNER = "android.permission.ACCESS_TV_TUNER"; field public static final String ACCESS_VIBRATOR_STATE = "android.permission.ACCESS_VIBRATOR_STATE"; field public static final String ACTIVITY_EMBEDDING = "android.permission.ACTIVITY_EMBEDDING"; field public static final String ADJUST_RUNTIME_PERMISSIONS_POLICY = "android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY"; field public static final String ALLOCATE_AGGRESSIVE = "android.permission.ALLOCATE_AGGRESSIVE"; Loading Loading @@ -9097,6 +9098,17 @@ package android.os { @IntDef(flag=true, prefix={"RESTRICTION_"}, value={android.os.UserManager.RESTRICTION_NOT_SET, android.os.UserManager.RESTRICTION_SOURCE_SYSTEM, android.os.UserManager.RESTRICTION_SOURCE_DEVICE_OWNER, android.os.UserManager.RESTRICTION_SOURCE_PROFILE_OWNER}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface UserManager.UserRestrictionSource { } public abstract class Vibrator { method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener); method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public boolean isVibrating(); method @RequiresPermission(android.Manifest.permission.ACCESS_VIBRATOR_STATE) public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); } public static interface Vibrator.OnVibratorStateChangedListener { method public void onVibratorStateChanged(boolean); } public class WorkSource implements android.os.Parcelable { ctor public WorkSource(int); ctor public WorkSource(int, @NonNull String);
api/test-current.txt +11 −0 Original line number Diff line number Diff line Loading @@ -2609,6 +2609,17 @@ package android.os { field @NonNull public static final android.os.Parcelable.Creator<android.os.VibrationEffect.Waveform> CREATOR; } public abstract class Vibrator { method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void addVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void addVibratorStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.Vibrator.OnVibratorStateChangedListener); method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public boolean isVibrating(); method @RequiresPermission("android.permission.ACCESS_VIBRATOR_STATE") public void removeVibratorStateListener(@NonNull android.os.Vibrator.OnVibratorStateChangedListener); } public static interface Vibrator.OnVibratorStateChangedListener { method public void onVibratorStateChanged(boolean); } public class VintfObject { method public static String[] getHalNamesAndVersions(); method public static String getSepolicyVersion(); Loading
core/java/android/hardware/input/InputManager.java +28 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package android.hardware.input; import android.annotation.CallbackExecutor; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.SdkConstant; Loading Loading @@ -51,6 +52,7 @@ import com.android.internal.os.SomeArgs; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.concurrent.Executor; import java.util.List; /** Loading Loading @@ -1235,6 +1237,32 @@ public final class InputManager { return true; } @Override public boolean isVibrating() { throw new UnsupportedOperationException( "isVibrating not supported in InputDeviceVibrator"); } @Override public void addVibratorStateListener(@NonNull OnVibratorStateChangedListener listener) { throw new UnsupportedOperationException( "addVibratorStateListener not supported in InputDeviceVibrator"); } @Override public void addVibratorStateListener( @NonNull @CallbackExecutor Executor executor, @NonNull OnVibratorStateChangedListener listener) { throw new UnsupportedOperationException( "addVibratorStateListener not supported in InputDeviceVibrator"); } @Override public void removeVibratorStateListener(@NonNull OnVibratorStateChangedListener listener) { throw new UnsupportedOperationException( "removeVibratorStateListener not supported in InputDeviceVibrator"); } @Override public boolean hasAmplitudeControl() { return false; Loading
core/java/android/os/IVibratorService.aidl +4 −0 Original line number Diff line number Diff line Loading @@ -18,11 +18,15 @@ package android.os; import android.os.VibrationEffect; import android.os.VibrationAttributes; import android.os.IVibratorStateListener; /** {@hide} */ interface IVibratorService { boolean hasVibrator(); boolean isVibrating(); boolean registerVibratorStateListener(in IVibratorStateListener listener); boolean unregisterVibratorStateListener(in IVibratorStateListener listener); boolean hasAmplitudeControl(); boolean[] areEffectsSupported(in int[] effectIds); boolean[] arePrimitivesSupported(in int[] primitiveIds); Loading
core/java/android/os/IVibratorStateListener.aidl 0 → 100644 +29 −0 Original line number Diff line number Diff line /* ** Copyright 2020, 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 android.os; /** * Listener for vibrator state. * {@hide} */ oneway interface IVibratorStateListener { /** * Called when a vibrator start/stop vibrating. * @param state the vibrator state. */ void onVibrating(in boolean vibrating); } No newline at end of file