final class android.hardware.input.InputManager$InputDeviceVibrator extends android.os.Vibrator
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: android.hardware.input.InputManager$InputDeviceVibrator
super_class: android.os.Vibrator
{
private final int mDeviceId;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.os.Binder mToken;
descriptor: Landroid/os/Binder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final android.hardware.input.InputManager this$0;
descriptor: Landroid/hardware/input/InputManager;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(android.hardware.input.InputManager, int);
descriptor: (Landroid/hardware/input/InputManager;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 2 0: aload 0
aload 1
putfield android.hardware.input.InputManager$InputDeviceVibrator.this$0:Landroid/hardware/input/InputManager;
aload 0
invokespecial android.os.Vibrator.<init>:()V
1: aload 0
iload 2
putfield android.hardware.input.InputManager$InputDeviceVibrator.mDeviceId:I
2: aload 0
new android.os.Binder
dup
invokespecial android.os.Binder.<init>:()V
putfield android.hardware.input.InputManager$InputDeviceVibrator.mToken:Landroid/os/Binder;
3: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/hardware/input/InputManager$InputDeviceVibrator;
0 4 2 deviceId I
MethodParameters:
Name Flags
this$0 final
deviceId
public boolean hasVibrator();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/hardware/input/InputManager$InputDeviceVibrator;
public boolean hasAmplitudeControl();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/hardware/input/InputManager$InputDeviceVibrator;
public void vibrate(int, java.lang.String, android.os.VibrationEffect, android.media.AudioAttributes);
descriptor: (ILjava/lang/String;Landroid/os/VibrationEffect;Landroid/media/AudioAttributes;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
instanceof android.os.VibrationEffect$OneShot
ifeq 5
1: aload 3
checkcast android.os.VibrationEffect$OneShot
astore 7
start local 7 2: iconst_2
newarray 11
dup
iconst_1
aload 7
invokevirtual android.os.VibrationEffect$OneShot.getDuration:()J
lastore
astore 5
start local 5 3: iconst_m1
istore 6
end local 7 start local 6 4: goto 12
end local 6 end local 5 StackMap locals:
StackMap stack:
5: aload 3
instanceof android.os.VibrationEffect$Waveform
ifeq 10
6: aload 3
checkcast android.os.VibrationEffect$Waveform
astore 7
start local 7 7: aload 7
invokevirtual android.os.VibrationEffect$Waveform.getTimings:()[J
astore 5
start local 5 8: aload 7
invokevirtual android.os.VibrationEffect$Waveform.getRepeatIndex:()I
istore 6
end local 7 start local 6 9: goto 12
end local 6 end local 5 10: StackMap locals:
StackMap stack:
ldc "InputManager"
ldc "Pre-baked effects aren't supported on input devices"
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
11: return
start local 5 start local 6 12: StackMap locals: long[] int
StackMap stack:
aload 0
getfield android.hardware.input.InputManager$InputDeviceVibrator.this$0:Landroid/hardware/input/InputManager;
getfield android.hardware.input.InputManager.mIm:Landroid/hardware/input/IInputManager;
aload 0
getfield android.hardware.input.InputManager$InputDeviceVibrator.mDeviceId:I
aload 5
iload 6
aload 0
getfield android.hardware.input.InputManager$InputDeviceVibrator.mToken:Landroid/os/Binder;
invokeinterface android.hardware.input.IInputManager.vibrate:(I[JILandroid/os/IBinder;)V
13: goto 16
StackMap locals:
StackMap stack: android.os.RemoteException
14: astore 7
start local 7 15: aload 7
invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
athrow
end local 7 16: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/hardware/input/InputManager$InputDeviceVibrator;
0 17 1 uid I
0 17 2 opPkg Ljava/lang/String;
0 17 3 effect Landroid/os/VibrationEffect;
0 17 4 attributes Landroid/media/AudioAttributes;
3 5 5 pattern [J
8 10 5 pattern [J
12 17 5 pattern [J
4 5 6 repeat I
9 10 6 repeat I
12 17 6 repeat I
2 4 7 oneShot Landroid/os/VibrationEffect$OneShot;
7 9 7 waveform Landroid/os/VibrationEffect$Waveform;
15 16 7 ex Landroid/os/RemoteException;
Exception table:
from to target type
12 13 14 Class android.os.RemoteException
MethodParameters:
Name Flags
uid
opPkg
effect
attributes
public void cancel();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield android.hardware.input.InputManager$InputDeviceVibrator.this$0:Landroid/hardware/input/InputManager;
getfield android.hardware.input.InputManager.mIm:Landroid/hardware/input/IInputManager;
aload 0
getfield android.hardware.input.InputManager$InputDeviceVibrator.mDeviceId:I
aload 0
getfield android.hardware.input.InputManager$InputDeviceVibrator.mToken:Landroid/os/Binder;
invokeinterface android.hardware.input.IInputManager.cancelVibrate:(ILandroid/os/IBinder;)V
1: goto 4
StackMap locals:
StackMap stack: android.os.RemoteException
2: astore 1
start local 1 3: aload 1
invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
athrow
end local 1 4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/hardware/input/InputManager$InputDeviceVibrator;
3 4 1 ex Landroid/os/RemoteException;
Exception table:
from to target type
0 1 2 Class android.os.RemoteException
}
SourceFile: "InputManager.java"
NestHost: android.hardware.input.InputManager
InnerClasses:
private final InputDeviceVibrator = android.hardware.input.InputManager$InputDeviceVibrator of android.hardware.input.InputManager
public OneShot = android.os.VibrationEffect$OneShot of android.os.VibrationEffect
public Waveform = android.os.VibrationEffect$Waveform of android.os.VibrationEffect