class android.media.MediaRecorder$EventHandler extends android.os.Handler
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: android.media.MediaRecorder$EventHandler
super_class: android.os.Handler
{
private android.media.MediaRecorder mMediaRecorder;
descriptor: Landroid/media/MediaRecorder;
flags: (0x0002) ACC_PRIVATE
private static final int MEDIA_RECORDER_EVENT_LIST_START;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int MEDIA_RECORDER_EVENT_ERROR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int MEDIA_RECORDER_EVENT_INFO;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int MEDIA_RECORDER_EVENT_LIST_END;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 99
private static final int MEDIA_RECORDER_TRACK_EVENT_LIST_START;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 100
private static final int MEDIA_RECORDER_TRACK_EVENT_ERROR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 100
private static final int MEDIA_RECORDER_TRACK_EVENT_INFO;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 101
private static final int MEDIA_RECORDER_TRACK_EVENT_LIST_END;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
private static final int MEDIA_RECORDER_AUDIO_ROUTING_CHANGED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10000
final android.media.MediaRecorder this$0;
descriptor: Landroid/media/MediaRecorder;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(android.media.MediaRecorder, android.media.MediaRecorder, android.os.Looper);
descriptor: (Landroid/media/MediaRecorder;Landroid/media/MediaRecorder;Landroid/os/Looper;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield android.media.MediaRecorder$EventHandler.this$0:Landroid/media/MediaRecorder;
1: aload 0
aload 3
invokespecial android.os.Handler.<init>:(Landroid/os/Looper;)V
2: aload 0
aload 2
putfield android.media.MediaRecorder$EventHandler.mMediaRecorder:Landroid/media/MediaRecorder;
3: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/media/MediaRecorder$EventHandler;
0 4 2 mr Landroid/media/MediaRecorder;
0 4 3 looper Landroid/os/Looper;
MethodParameters:
Name Flags
this$0 final
mr
looper
public void handleMessage(android.os.Message);
descriptor: (Landroid/os/Message;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield android.media.MediaRecorder$EventHandler.mMediaRecorder:Landroid/media/MediaRecorder;
getfield android.media.MediaRecorder.mNativeContext:J
lconst_0
lcmp
ifne 3
1: ldc "MediaRecorder"
ldc "mediarecorder went away with unhandled events"
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
2: return
3: StackMap locals:
StackMap stack:
aload 1
getfield android.os.Message.what:I
lookupswitch { // 5
1: 4
2: 7
100: 4
101: 7
10000: 10
default: 21
}
4: StackMap locals:
StackMap stack:
aload 0
getfield android.media.MediaRecorder$EventHandler.this$0:Landroid/media/MediaRecorder;
getfield android.media.MediaRecorder.mOnErrorListener:Landroid/media/MediaRecorder$OnErrorListener;
ifnull 6
5: aload 0
getfield android.media.MediaRecorder$EventHandler.this$0:Landroid/media/MediaRecorder;
getfield android.media.MediaRecorder.mOnErrorListener:Landroid/media/MediaRecorder$OnErrorListener;
aload 0
getfield android.media.MediaRecorder$EventHandler.mMediaRecorder:Landroid/media/MediaRecorder;
aload 1
getfield android.os.Message.arg1:I
aload 1
getfield android.os.Message.arg2:I
invokeinterface android.media.MediaRecorder$OnErrorListener.onError:(Landroid/media/MediaRecorder;II)V
6: StackMap locals:
StackMap stack:
return
7: StackMap locals:
StackMap stack:
aload 0
getfield android.media.MediaRecorder$EventHandler.this$0:Landroid/media/MediaRecorder;
getfield android.media.MediaRecorder.mOnInfoListener:Landroid/media/MediaRecorder$OnInfoListener;
ifnull 9
8: aload 0
getfield android.media.MediaRecorder$EventHandler.this$0:Landroid/media/MediaRecorder;
getfield android.media.MediaRecorder.mOnInfoListener:Landroid/media/MediaRecorder$OnInfoListener;
aload 0
getfield android.media.MediaRecorder$EventHandler.mMediaRecorder:Landroid/media/MediaRecorder;
aload 1
getfield android.os.Message.arg1:I
aload 1
getfield android.os.Message.arg2:I
invokeinterface android.media.MediaRecorder$OnInfoListener.onInfo:(Landroid/media/MediaRecorder;II)V
9: StackMap locals:
StackMap stack:
return
10: StackMap locals:
StackMap stack:
invokestatic android.media.AudioManager.resetAudioPortGeneration:()I
pop
11: aload 0
getfield android.media.MediaRecorder$EventHandler.this$0:Landroid/media/MediaRecorder;
getfield android.media.MediaRecorder.mRoutingChangeListeners:Landroid/util/ArrayMap;
dup
astore 2
monitorenter
12: aload 0
getfield android.media.MediaRecorder$EventHandler.this$0:Landroid/media/MediaRecorder;
getfield android.media.MediaRecorder.mRoutingChangeListeners:Landroid/util/ArrayMap;
invokevirtual android.util.ArrayMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 15
StackMap locals: android.media.MediaRecorder$EventHandler android.os.Message android.util.ArrayMap top java.util.Iterator
StackMap stack:
13: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast android.media.NativeRoutingEventHandlerDelegate
astore 3
start local 3 14: aload 3
invokevirtual android.media.NativeRoutingEventHandlerDelegate.notifyClient:()V
end local 3 15: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
16: aload 2
monitorexit
17: goto 20
StackMap locals: android.media.MediaRecorder$EventHandler android.os.Message android.util.ArrayMap
StackMap stack: java.lang.Throwable
18: aload 2
monitorexit
19: athrow
20: StackMap locals:
StackMap stack:
return
21: StackMap locals:
StackMap stack:
ldc "MediaRecorder"
new java.lang.StringBuilder
dup
ldc "Unknown message type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield android.os.Message.what:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
22: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Landroid/media/MediaRecorder$EventHandler;
0 23 1 msg Landroid/os/Message;
14 15 3 delegate Landroid/media/NativeRoutingEventHandlerDelegate;
Exception table:
from to target type
12 17 18 any
18 19 18 any
MethodParameters:
Name Flags
msg
}
SourceFile: "MediaRecorder.java"
NestHost: android.media.MediaRecorder
InnerClasses:
private EventHandler = android.media.MediaRecorder$EventHandler of android.media.MediaRecorder
public abstract OnErrorListener = android.media.MediaRecorder$OnErrorListener of android.media.MediaRecorder
public abstract OnInfoListener = android.media.MediaRecorder$OnInfoListener of android.media.MediaRecorder