public abstract class android.telecom.InCallService extends android.app.Service
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: android.telecom.InCallService
  super_class: android.app.Service
{
  public static final java.lang.String SERVICE_INTERFACE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.telecom.InCallService"

  private static final int MSG_SET_IN_CALL_ADAPTER;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int MSG_ADD_CALL;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int MSG_UPDATE_CALL;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int MSG_SET_POST_DIAL_WAIT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  private static final int MSG_ON_CALL_AUDIO_STATE_CHANGED;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int MSG_BRING_TO_FOREGROUND;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  private static final int MSG_ON_CAN_ADD_CALL_CHANGED;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  private static final int MSG_SILENCE_RINGER;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  private static final int MSG_ON_CONNECTION_EVENT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 9

  private static final int MSG_ON_RTT_UPGRADE_REQUEST;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  private static final int MSG_ON_RTT_INITIATION_FAILURE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  private static final int MSG_ON_HANDOVER_FAILED;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  private static final int MSG_ON_HANDOVER_COMPLETE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 13

  private final android.os.Handler mHandler;
    descriptor: Landroid/os/Handler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private android.telecom.Phone$Listener mPhoneListener;
    descriptor: Landroid/telecom/Phone$Listener;
    flags: (0x0002) ACC_PRIVATE

  private android.telecom.Phone mPhone;
    descriptor: Landroid/telecom/Phone;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // android.telecom.InCallService this
         0: .line 318
            aload 0 /* this */
            invokespecial android.app.Service.<init>:()V
         1: .line 107
            aload 0 /* this */
            new android.telecom.InCallService$1
            dup
            aload 0 /* this */
            invokestatic android.os.Looper.getMainLooper:()Landroid/os/Looper;
            invokespecial android.telecom.InCallService$1.<init>:(Landroid/telecom/InCallService;Landroid/os/Looper;)V
            putfield android.telecom.InCallService.mHandler:Landroid/os/Handler;
         2: .line 273
            aload 0 /* this */
            new android.telecom.InCallService$2
            dup
            aload 0 /* this */
            invokespecial android.telecom.InCallService$2.<init>:(Landroid/telecom/InCallService;)V
            putfield android.telecom.InCallService.mPhoneListener:Landroid/telecom/Phone$Listener;
         3: .line 319
            return
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/telecom/InCallService;

  public android.os.IBinder onBind(android.content.Intent);
    descriptor: (Landroid/content/Intent;)Landroid/os/IBinder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.content.Intent intent
         0: .line 323
            new android.telecom.InCallService$InCallServiceBinder
            dup
            aload 0 /* this */
            invokespecial android.telecom.InCallService$InCallServiceBinder.<init>:(Landroid/telecom/InCallService;)V
            areturn
        end local 1 // android.content.Intent intent
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Landroid/telecom/InCallService;
            0    1     1  intent  Landroid/content/Intent;
    MethodParameters:
        Name  Flags
      intent  

  public boolean onUnbind(android.content.Intent);
    descriptor: (Landroid/content/Intent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.content.Intent intent
         0: .line 328
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            ifnull 6
         1: .line 329
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            astore 2 /* oldPhone */
        start local 2 // android.telecom.Phone oldPhone
         2: .line 330
            aload 0 /* this */
            aconst_null
            putfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
         3: .line 332
            aload 2 /* oldPhone */
            invokevirtual android.telecom.Phone.destroy:()V
         4: .line 336
            aload 2 /* oldPhone */
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhoneListener:Landroid/telecom/Phone$Listener;
            invokevirtual android.telecom.Phone.removeListener:(Landroid/telecom/Phone$Listener;)V
         5: .line 338
            aload 0 /* this */
            aload 2 /* oldPhone */
            invokevirtual android.telecom.InCallService.onPhoneDestroyed:(Landroid/telecom/Phone;)V
        end local 2 // android.telecom.Phone oldPhone
         6: .line 341
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // android.content.Intent intent
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Landroid/telecom/InCallService;
            0    7     1    intent  Landroid/content/Intent;
            2    6     2  oldPhone  Landroid/telecom/Phone;
    MethodParameters:
        Name  Flags
      intent  

  public android.telecom.Phone getPhone();
    descriptor: ()Landroid/telecom/Phone;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.telecom.InCallService this
         0: .line 356
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            areturn
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/telecom/InCallService;
    RuntimeVisibleAnnotations: 
      android.annotation.SystemApi()
      java.lang.Deprecated()

  public final java.util.List<android.telecom.Call> getCalls();
    descriptor: ()Ljava/util/List;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.telecom.InCallService this
         0: .line 365
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            ifnonnull 1
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            invokevirtual android.telecom.Phone.getCalls:()Ljava/util/List;
      StackMap locals:
      StackMap stack: java.util.List
         2: areturn
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/telecom/InCallService;
    Signature: ()Ljava/util/List<Landroid/telecom/Call;>;

  public final boolean canAddCall();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.telecom.InCallService this
         0: .line 374
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            ifnonnull 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            invokevirtual android.telecom.Phone.canAddCall:()Z
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/telecom/InCallService;

  public final android.telecom.AudioState getAudioState();
    descriptor: ()Landroid/telecom/AudioState;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.telecom.InCallService this
         0: .line 387
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            invokevirtual android.telecom.Phone.getAudioState:()Landroid/telecom/AudioState;
      StackMap locals:
      StackMap stack: android.telecom.AudioState
         2: areturn
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/telecom/InCallService;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public final android.telecom.CallAudioState getCallAudioState();
    descriptor: ()Landroid/telecom/CallAudioState;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.telecom.InCallService this
         0: .line 397
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            invokevirtual android.telecom.Phone.getCallAudioState:()Landroid/telecom/CallAudioState;
      StackMap locals:
      StackMap stack: android.telecom.CallAudioState
         2: areturn
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/telecom/InCallService;

  public final void setMuted(boolean);
    descriptor: (Z)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // boolean state
         0: .line 407
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            ifnull 2
         1: .line 408
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            iload 1 /* state */
            invokevirtual android.telecom.Phone.setMuted:(Z)V
         2: .line 410
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean state
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Landroid/telecom/InCallService;
            0    3     1  state  Z
    MethodParameters:
       Name  Flags
      state  

  public final void setAudioRoute(int);
    descriptor: (I)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // int route
         0: .line 419
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            ifnull 2
         1: .line 420
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            iload 1 /* route */
            invokevirtual android.telecom.Phone.setAudioRoute:(I)V
         2: .line 422
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int route
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Landroid/telecom/InCallService;
            0    3     1  route  I
    MethodParameters:
       Name  Flags
      route  

  public final void requestBluetoothAudio(android.bluetooth.BluetoothDevice);
    descriptor: (Landroid/bluetooth/BluetoothDevice;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.bluetooth.BluetoothDevice bluetoothDevice
         0: .line 434
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            ifnull 2
         1: .line 435
            aload 0 /* this */
            getfield android.telecom.InCallService.mPhone:Landroid/telecom/Phone;
            aload 1 /* bluetoothDevice */
            invokevirtual android.bluetooth.BluetoothDevice.getAddress:()Ljava/lang/String;
            invokevirtual android.telecom.Phone.requestBluetoothAudio:(Ljava/lang/String;)V
         2: .line 437
      StackMap locals:
      StackMap stack:
            return
        end local 1 // android.bluetooth.BluetoothDevice bluetoothDevice
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Landroid/telecom/InCallService;
            0    3     1  bluetoothDevice  Landroid/bluetooth/BluetoothDevice;
    MethodParameters:
                 Name  Flags
      bluetoothDevice  

  public void onPhoneCreated(android.telecom.Phone);
    descriptor: (Landroid/telecom/Phone;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.telecom.Phone phone
         0: .line 452
            return
        end local 1 // android.telecom.Phone phone
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Landroid/telecom/InCallService;
            0    1     1  phone  Landroid/telecom/Phone;
    RuntimeVisibleAnnotations: 
      android.annotation.SystemApi()
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      phone  

  public void onPhoneDestroyed(android.telecom.Phone);
    descriptor: (Landroid/telecom/Phone;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.telecom.Phone phone
         0: .line 467
            return
        end local 1 // android.telecom.Phone phone
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Landroid/telecom/InCallService;
            0    1     1  phone  Landroid/telecom/Phone;
    RuntimeVisibleAnnotations: 
      android.annotation.SystemApi()
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      phone  

  public void onAudioStateChanged(android.telecom.AudioState);
    descriptor: (Landroid/telecom/AudioState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.telecom.AudioState audioState
         0: .line 478
            return
        end local 1 // android.telecom.AudioState audioState
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/telecom/InCallService;
            0    1     1  audioState  Landroid/telecom/AudioState;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      audioState  

  public void onCallAudioStateChanged(android.telecom.CallAudioState);
    descriptor: (Landroid/telecom/CallAudioState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.telecom.CallAudioState audioState
         0: .line 486
            return
        end local 1 // android.telecom.CallAudioState audioState
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/telecom/InCallService;
            0    1     1  audioState  Landroid/telecom/CallAudioState;
    MethodParameters:
            Name  Flags
      audioState  

  public void onBringToForeground(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // boolean showDialpad
         0: .line 496
            return
        end local 1 // boolean showDialpad
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Landroid/telecom/InCallService;
            0    1     1  showDialpad  Z
    MethodParameters:
             Name  Flags
      showDialpad  

  public void onCallAdded(android.telecom.Call);
    descriptor: (Landroid/telecom/Call;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.telecom.Call call
         0: .line 508
            return
        end local 1 // android.telecom.Call call
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/telecom/InCallService;
            0    1     1  call  Landroid/telecom/Call;
    MethodParameters:
      Name  Flags
      call  

  public void onCallRemoved(android.telecom.Call);
    descriptor: (Landroid/telecom/Call;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // android.telecom.Call call
         0: .line 519
            return
        end local 1 // android.telecom.Call call
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/telecom/InCallService;
            0    1     1  call  Landroid/telecom/Call;
    MethodParameters:
      Name  Flags
      call  

  public void onCanAddCallChanged(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.telecom.InCallService this
        start local 1 // boolean canAddCall
         0: .line 529
            return
        end local 1 // boolean canAddCall
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/telecom/InCallService;
            0    1     1  canAddCall  Z
    MethodParameters:
            Name  Flags
      canAddCall  

  public void onSilenceRinger();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // android.telecom.InCallService this
         0: .line 535
            return
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/telecom/InCallService;

  public void onConnectionEvent(android.telecom.Call, java.lang.String, android.os.Bundle);
    descriptor: (Landroid/telecom/Call;Ljava/lang/String;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=4
        start local 0 // android.telecom.InCallService this
        start local 1 // android.telecom.Call call
        start local 2 // java.lang.String event
        start local 3 // android.os.Bundle extras
         0: .line 548
            return
        end local 3 // android.os.Bundle extras
        end local 2 // java.lang.String event
        end local 1 // android.telecom.Call call
        end local 0 // android.telecom.InCallService this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Landroid/telecom/InCallService;
            0    1     1    call  Landroid/telecom/Call;
            0    1     2   event  Ljava/lang/String;
            0    1     3  extras  Landroid/os/Bundle;
    MethodParameters:
        Name  Flags
      call    
      event   
      extras  
}
SourceFile: "InCallService.java"
NestMembers:
  android.telecom.InCallService$1  android.telecom.InCallService$2  android.telecom.InCallService$InCallServiceBinder  android.telecom.InCallService$VideoCall  android.telecom.InCallService$VideoCall$Callback
InnerClasses:
  android.telecom.InCallService$1
  android.telecom.InCallService$2
  private final InCallServiceBinder = android.telecom.InCallService$InCallServiceBinder of android.telecom.InCallService
  public abstract VideoCall = android.telecom.InCallService$VideoCall of android.telecom.InCallService
  public abstract Listener = android.telecom.Phone$Listener of android.telecom.Phone