public class android.service.voice.AlwaysOnHotwordDetector
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.service.voice.AlwaysOnHotwordDetector
super_class: java.lang.Object
{
private static final int STATE_INVALID;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -3
public static final int STATE_HARDWARE_UNAVAILABLE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -2
public static final int STATE_KEYPHRASE_UNSUPPORTED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
public static final int STATE_KEYPHRASE_UNENROLLED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int STATE_KEYPHRASE_ENROLLED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int STATE_NOT_READY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int MANAGE_ACTION_ENROLL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int MANAGE_ACTION_RE_ENROLL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int MANAGE_ACTION_UN_ENROLL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int RECOGNITION_FLAG_NONE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int RECOGNITION_FLAG_CAPTURE_TRIGGER_AUDIO;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int RECOGNITION_FLAG_ALLOW_MULTIPLE_TRIGGERS;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int RECOGNITION_MODE_VOICE_TRIGGER;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int RECOGNITION_MODE_USER_IDENTIFICATION;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "AlwaysOnHotwordDetector"
static final boolean DBG;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int STATUS_ERROR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -2147483648
private static final int STATUS_OK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int MSG_AVAILABILITY_CHANGED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int MSG_HOTWORD_DETECTED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int MSG_DETECTION_ERROR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int MSG_DETECTION_PAUSE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int MSG_DETECTION_RESUME;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private final java.lang.String mText;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Locale mLocale;
descriptor: Ljava/util/Locale;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.hardware.soundtrigger.KeyphraseMetadata mKeyphraseMetadata;
descriptor: Landroid/hardware/soundtrigger/KeyphraseMetadata;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.hardware.soundtrigger.KeyphraseEnrollmentInfo mKeyphraseEnrollmentInfo;
descriptor: Landroid/hardware/soundtrigger/KeyphraseEnrollmentInfo;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.service.voice.IVoiceInteractionService mVoiceInteractionService;
descriptor: Landroid/service/voice/IVoiceInteractionService;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.android.internal.app.IVoiceInteractionManagerService mModelManagementService;
descriptor: Lcom/android/internal/app/IVoiceInteractionManagerService;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.service.voice.AlwaysOnHotwordDetector$SoundTriggerListener mInternalCallback;
descriptor: Landroid/service/voice/AlwaysOnHotwordDetector$SoundTriggerListener;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.service.voice.AlwaysOnHotwordDetector$Callback mExternalCallback;
descriptor: Landroid/service/voice/AlwaysOnHotwordDetector$Callback;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.Object mLock;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.os.Handler mHandler;
descriptor: Landroid/os/Handler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int mAvailability;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>(java.lang.String, java.util.Locale, android.service.voice.AlwaysOnHotwordDetector$Callback, android.hardware.soundtrigger.KeyphraseEnrollmentInfo, android.service.voice.IVoiceInteractionService, com.android.internal.app.IVoiceInteractionManagerService);
descriptor: (Ljava/lang/String;Ljava/util/Locale;Landroid/service/voice/AlwaysOnHotwordDetector$Callback;Landroid/hardware/soundtrigger/KeyphraseEnrollmentInfo;Landroid/service/voice/IVoiceInteractionService;Lcom/android/internal/app/IVoiceInteractionManagerService;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
2: aload 0
iconst_0
putfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
3: aload 0
aload 1
putfield android.service.voice.AlwaysOnHotwordDetector.mText:Ljava/lang/String;
4: aload 0
aload 2
putfield android.service.voice.AlwaysOnHotwordDetector.mLocale:Ljava/util/Locale;
5: aload 0
aload 4
putfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseEnrollmentInfo:Landroid/hardware/soundtrigger/KeyphraseEnrollmentInfo;
6: aload 0
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseEnrollmentInfo:Landroid/hardware/soundtrigger/KeyphraseEnrollmentInfo;
aload 1
aload 2
invokevirtual android.hardware.soundtrigger.KeyphraseEnrollmentInfo.getKeyphraseMetadata:(Ljava/lang/String;Ljava/util/Locale;)Landroid/hardware/soundtrigger/KeyphraseMetadata;
putfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseMetadata:Landroid/hardware/soundtrigger/KeyphraseMetadata;
7: aload 0
aload 3
putfield android.service.voice.AlwaysOnHotwordDetector.mExternalCallback:Landroid/service/voice/AlwaysOnHotwordDetector$Callback;
8: aload 0
new android.service.voice.AlwaysOnHotwordDetector$MyHandler
dup
aload 0
invokespecial android.service.voice.AlwaysOnHotwordDetector$MyHandler.<init>:(Landroid/service/voice/AlwaysOnHotwordDetector;)V
putfield android.service.voice.AlwaysOnHotwordDetector.mHandler:Landroid/os/Handler;
9: aload 0
new android.service.voice.AlwaysOnHotwordDetector$SoundTriggerListener
dup
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mHandler:Landroid/os/Handler;
invokespecial android.service.voice.AlwaysOnHotwordDetector$SoundTriggerListener.<init>:(Landroid/os/Handler;)V
putfield android.service.voice.AlwaysOnHotwordDetector.mInternalCallback:Landroid/service/voice/AlwaysOnHotwordDetector$SoundTriggerListener;
10: aload 0
aload 5
putfield android.service.voice.AlwaysOnHotwordDetector.mVoiceInteractionService:Landroid/service/voice/IVoiceInteractionService;
11: aload 0
aload 6
putfield android.service.voice.AlwaysOnHotwordDetector.mModelManagementService:Lcom/android/internal/app/IVoiceInteractionManagerService;
12: new android.service.voice.AlwaysOnHotwordDetector$RefreshAvailabiltyTask
dup
aload 0
invokespecial android.service.voice.AlwaysOnHotwordDetector$RefreshAvailabiltyTask.<init>:(Landroid/service/voice/AlwaysOnHotwordDetector;)V
iconst_0
anewarray java.lang.Void
invokevirtual android.service.voice.AlwaysOnHotwordDetector$RefreshAvailabiltyTask.execute:([Ljava/lang/Object;)Landroid/os/AsyncTask;
pop
13: 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 14 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
0 14 1 text Ljava/lang/String;
0 14 2 locale Ljava/util/Locale;
0 14 3 callback Landroid/service/voice/AlwaysOnHotwordDetector$Callback;
0 14 4 keyphraseEnrollmentInfo Landroid/hardware/soundtrigger/KeyphraseEnrollmentInfo;
0 14 5 voiceInteractionService Landroid/service/voice/IVoiceInteractionService;
0 14 6 modelManagementService Lcom/android/internal/app/IVoiceInteractionManagerService;
MethodParameters:
Name Flags
text
locale
callback
keyphraseEnrollmentInfo
voiceInteractionService
modelManagementService
public int getSupportedRecognitionModes();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
invokevirtual android.service.voice.AlwaysOnHotwordDetector.getSupportedRecognitionModesLocked:()I
aload 1
monitorexit
2: ireturn
3: StackMap locals: android.service.voice.AlwaysOnHotwordDetector java.lang.Object
StackMap stack: java.lang.Throwable
aload 1
monitorexit
4: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
Exception table:
from to target type
1 2 3 any
3 4 3 any
private int getSupportedRecognitionModesLocked();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
bipush -3
if_icmpne 4
1: new java.lang.IllegalStateException
dup
2: ldc "getSupportedRecognitionModes called on an invalid detector"
3: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
iconst_2
if_icmpeq 9
5: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
iconst_1
if_icmpeq 9
6: new java.lang.UnsupportedOperationException
dup
7: ldc "Getting supported recognition modes for the keyphrase is not supported"
8: invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseMetadata:Landroid/hardware/soundtrigger/KeyphraseMetadata;
getfield android.hardware.soundtrigger.KeyphraseMetadata.recognitionModeFlags:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
public boolean startRecognition(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
bipush -3
if_icmpne 3
2: new java.lang.IllegalStateException
dup
ldc "startRecognition called on an invalid detector"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
iconst_2
if_icmpeq 7
4: new java.lang.UnsupportedOperationException
dup
5: ldc "Recognition for the given keyphrase is not supported"
6: invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual android.service.voice.AlwaysOnHotwordDetector.startRecognitionLocked:(I)I
ifne 8
iconst_1
goto 9
StackMap locals:
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: aload 2
monitorexit
10: ireturn
11: StackMap locals:
StackMap stack: java.lang.Throwable
aload 2
monitorexit
12: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
0 13 1 recognitionFlags I
Exception table:
from to target type
1 10 11 any
11 12 11 any
MethodParameters:
Name Flags
recognitionFlags
public boolean stopRecognition();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
bipush -3
if_icmpne 3
2: new java.lang.IllegalStateException
dup
ldc "stopRecognition called on an invalid detector"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
iconst_2
if_icmpeq 7
4: new java.lang.UnsupportedOperationException
dup
5: ldc "Recognition for the given keyphrase is not supported"
6: invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.service.voice.AlwaysOnHotwordDetector.stopRecognitionLocked:()I
ifne 8
iconst_1
goto 9
StackMap locals:
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: aload 1
monitorexit
10: ireturn
11: StackMap locals:
StackMap stack: java.lang.Throwable
aload 1
monitorexit
12: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
Exception table:
from to target type
1 10 11 any
11 12 11 any
public android.content.Intent createEnrollIntent();
descriptor: ()Landroid/content/Intent;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
iconst_0
invokevirtual android.service.voice.AlwaysOnHotwordDetector.getManageIntentLocked:(I)Landroid/content/Intent;
aload 1
monitorexit
2: areturn
3: StackMap locals: android.service.voice.AlwaysOnHotwordDetector java.lang.Object
StackMap stack: java.lang.Throwable
aload 1
monitorexit
4: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
Exception table:
from to target type
1 2 3 any
3 4 3 any
public android.content.Intent createUnEnrollIntent();
descriptor: ()Landroid/content/Intent;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
iconst_2
invokevirtual android.service.voice.AlwaysOnHotwordDetector.getManageIntentLocked:(I)Landroid/content/Intent;
aload 1
monitorexit
2: areturn
3: StackMap locals: android.service.voice.AlwaysOnHotwordDetector java.lang.Object
StackMap stack: java.lang.Throwable
aload 1
monitorexit
4: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
Exception table:
from to target type
1 2 3 any
3 4 3 any
public android.content.Intent createReEnrollIntent();
descriptor: ()Landroid/content/Intent;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
iconst_1
invokevirtual android.service.voice.AlwaysOnHotwordDetector.getManageIntentLocked:(I)Landroid/content/Intent;
aload 1
monitorexit
2: areturn
3: StackMap locals: android.service.voice.AlwaysOnHotwordDetector java.lang.Object
StackMap stack: java.lang.Throwable
aload 1
monitorexit
4: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
Exception table:
from to target type
1 2 3 any
3 4 3 any
private android.content.Intent getManageIntentLocked(int);
descriptor: (I)Landroid/content/Intent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
bipush -3
if_icmpne 2
1: new java.lang.IllegalStateException
dup
ldc "getManageIntent called on an invalid detector"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
iconst_2
if_icmpeq 7
3: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
iconst_1
if_icmpeq 7
4: new java.lang.UnsupportedOperationException
dup
5: ldc "Managing the given keyphrase is not supported"
6: invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseEnrollmentInfo:Landroid/hardware/soundtrigger/KeyphraseEnrollmentInfo;
iload 1
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mText:Ljava/lang/String;
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLocale:Ljava/util/Locale;
invokevirtual android.hardware.soundtrigger.KeyphraseEnrollmentInfo.getManageKeyphraseIntent:(ILjava/lang/String;Ljava/util/Locale;)Landroid/content/Intent;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
0 8 1 action I
MethodParameters:
Name Flags
action
void invalidate();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
bipush -3
putfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
2: aload 0
invokevirtual android.service.voice.AlwaysOnHotwordDetector.notifyStateChangedLocked:()V
3: aload 1
monitorexit
4: goto 7
StackMap locals: android.service.voice.AlwaysOnHotwordDetector java.lang.Object
StackMap stack: java.lang.Throwable
5: aload 1
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
Exception table:
from to target type
1 4 5 any
5 6 5 any
void onSoundModelsChanged();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
bipush -3
if_icmpeq 4
2: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
bipush -2
if_icmpeq 4
3: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
iconst_m1
if_icmpne 7
4: StackMap locals: java.lang.Object
StackMap stack:
ldc "AlwaysOnHotwordDetector"
ldc "Received onSoundModelsChanged for an unsupported keyphrase/config"
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
5: aload 1
monitorexit
6: return
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.service.voice.AlwaysOnHotwordDetector.stopRecognitionLocked:()I
pop
8: new android.service.voice.AlwaysOnHotwordDetector$RefreshAvailabiltyTask
dup
aload 0
invokespecial android.service.voice.AlwaysOnHotwordDetector$RefreshAvailabiltyTask.<init>:(Landroid/service/voice/AlwaysOnHotwordDetector;)V
iconst_0
anewarray java.lang.Void
invokevirtual android.service.voice.AlwaysOnHotwordDetector$RefreshAvailabiltyTask.execute:([Ljava/lang/Object;)Landroid/os/AsyncTask;
pop
9: aload 1
monitorexit
10: goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
11: aload 1
monitorexit
12: athrow
13: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
Exception table:
from to target type
1 6 11 any
7 10 11 any
11 12 11 any
private int startRecognitionLocked(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=11, locals=7, args_size=2
start local 0 start local 1 0: iconst_1
anewarray android.hardware.soundtrigger.SoundTrigger$KeyphraseRecognitionExtra
astore 2
start local 2 1: aload 2
iconst_0
new android.hardware.soundtrigger.SoundTrigger$KeyphraseRecognitionExtra
dup
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseMetadata:Landroid/hardware/soundtrigger/KeyphraseMetadata;
getfield android.hardware.soundtrigger.KeyphraseMetadata.id:I
2: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseMetadata:Landroid/hardware/soundtrigger/KeyphraseMetadata;
getfield android.hardware.soundtrigger.KeyphraseMetadata.recognitionModeFlags:I
iconst_0
iconst_0
anewarray android.hardware.soundtrigger.SoundTrigger$ConfidenceLevel
invokespecial android.hardware.soundtrigger.SoundTrigger$KeyphraseRecognitionExtra.<init>:(III[Landroid/hardware/soundtrigger/SoundTrigger$ConfidenceLevel;)V
3: aastore
4: iload 1
iconst_1
iand
ifeq 5
iconst_1
goto 6
StackMap locals: android.hardware.soundtrigger.SoundTrigger$KeyphraseRecognitionExtra[]
StackMap stack:
5: iconst_0
6: StackMap locals:
StackMap stack: int
istore 3
start local 3 7: iload 1
iconst_2
iand
ifeq 8
iconst_1
goto 9
StackMap locals: int
StackMap stack:
8: iconst_0
9: StackMap locals:
StackMap stack: int
istore 4
start local 4 10: ldc -2147483648
istore 5
start local 5 11: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mModelManagementService:Lcom/android/internal/app/IVoiceInteractionManagerService;
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mVoiceInteractionService:Landroid/service/voice/IVoiceInteractionService;
12: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseMetadata:Landroid/hardware/soundtrigger/KeyphraseMetadata;
getfield android.hardware.soundtrigger.KeyphraseMetadata.id:I
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLocale:Ljava/util/Locale;
invokevirtual java.util.Locale.toLanguageTag:()Ljava/lang/String;
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mInternalCallback:Landroid/service/voice/AlwaysOnHotwordDetector$SoundTriggerListener;
13: new android.hardware.soundtrigger.SoundTrigger$RecognitionConfig
dup
iload 3
iload 4
14: aload 2
aconst_null
15: invokespecial android.hardware.soundtrigger.SoundTrigger$RecognitionConfig.<init>:(ZZ[Landroid/hardware/soundtrigger/SoundTrigger$KeyphraseRecognitionExtra;[B)V
16: invokeinterface com.android.internal.app.IVoiceInteractionManagerService.startRecognition:(Landroid/service/voice/IVoiceInteractionService;ILjava/lang/String;Landroid/hardware/soundtrigger/IRecognitionStatusCallback;Landroid/hardware/soundtrigger/SoundTrigger$RecognitionConfig;)I
istore 5
17: goto 20
StackMap locals: android.service.voice.AlwaysOnHotwordDetector int android.hardware.soundtrigger.SoundTrigger$KeyphraseRecognitionExtra[] int int int
StackMap stack: android.os.RemoteException
18: astore 6
start local 6 19: ldc "AlwaysOnHotwordDetector"
ldc "RemoteException in startRecognition!"
aload 6
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 6 20: StackMap locals:
StackMap stack:
iload 5
ifeq 22
21: ldc "AlwaysOnHotwordDetector"
new java.lang.StringBuilder
dup
ldc "startRecognition() failed with error code "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
22: StackMap locals:
StackMap stack:
iload 5
ireturn
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 23 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
0 23 1 recognitionFlags I
1 23 2 recognitionExtra [Landroid/hardware/soundtrigger/SoundTrigger$KeyphraseRecognitionExtra;
7 23 3 captureTriggerAudio Z
10 23 4 allowMultipleTriggers Z
11 23 5 code I
19 20 6 e Landroid/os/RemoteException;
Exception table:
from to target type
11 17 18 Class android.os.RemoteException
MethodParameters:
Name Flags
recognitionFlags
private int stopRecognitionLocked();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=1
start local 0 0: ldc -2147483648
istore 1
start local 1 1: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mModelManagementService:Lcom/android/internal/app/IVoiceInteractionManagerService;
2: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mVoiceInteractionService:Landroid/service/voice/IVoiceInteractionService;
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseMetadata:Landroid/hardware/soundtrigger/KeyphraseMetadata;
getfield android.hardware.soundtrigger.KeyphraseMetadata.id:I
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mInternalCallback:Landroid/service/voice/AlwaysOnHotwordDetector$SoundTriggerListener;
3: invokeinterface com.android.internal.app.IVoiceInteractionManagerService.stopRecognition:(Landroid/service/voice/IVoiceInteractionService;ILandroid/hardware/soundtrigger/IRecognitionStatusCallback;)I
istore 1
4: goto 7
StackMap locals: android.service.voice.AlwaysOnHotwordDetector int
StackMap stack: android.os.RemoteException
5: astore 2
start local 2 6: ldc "AlwaysOnHotwordDetector"
ldc "RemoteException in stopRecognition!"
aload 2
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 2 7: StackMap locals:
StackMap stack:
iload 1
ifeq 9
8: ldc "AlwaysOnHotwordDetector"
new java.lang.StringBuilder
dup
ldc "stopRecognition() failed with error code "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
9: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
1 10 1 code I
6 7 2 e Landroid/os/RemoteException;
Exception table:
from to target type
1 4 5 Class android.os.RemoteException
private void notifyStateChangedLocked();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mHandler:Landroid/os/Handler;
iconst_1
invokestatic android.os.Message.obtain:(Landroid/os/Handler;I)Landroid/os/Message;
astore 1
start local 1 1: aload 1
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
putfield android.os.Message.arg1:I
2: aload 1
invokevirtual android.os.Message.sendToTarget:()V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
1 4 1 message Landroid/os/Message;
public void dump(java.lang.String, java.io.PrintWriter);
descriptor: (Ljava/lang/String;Ljava/io/PrintWriter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLock:Ljava/lang/Object;
dup
astore 3
monitorenter
1: aload 2
aload 1
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
ldc "Text="
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mText:Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
2: aload 2
aload 1
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
ldc "Locale="
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mLocale:Ljava/util/Locale;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/Object;)V
3: aload 2
aload 1
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
ldc "Availability="
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mAvailability:I
invokevirtual java.io.PrintWriter.println:(I)V
4: aload 2
aload 1
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
ldc "KeyphraseMetadata="
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseMetadata:Landroid/hardware/soundtrigger/KeyphraseMetadata;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/Object;)V
5: aload 2
aload 1
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
ldc "EnrollmentInfo="
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
aload 2
aload 0
getfield android.service.voice.AlwaysOnHotwordDetector.mKeyphraseEnrollmentInfo:Landroid/hardware/soundtrigger/KeyphraseEnrollmentInfo;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/Object;)V
6: aload 3
monitorexit
7: goto 10
StackMap locals: android.service.voice.AlwaysOnHotwordDetector java.lang.String java.io.PrintWriter java.lang.Object
StackMap stack: java.lang.Throwable
8: aload 3
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/service/voice/AlwaysOnHotwordDetector;
0 11 1 prefix Ljava/lang/String;
0 11 2 pw Ljava/io/PrintWriter;
Exception table:
from to target type
1 7 8 any
8 9 8 any
MethodParameters:
Name Flags
prefix
pw
}
SourceFile: "AlwaysOnHotwordDetector.java"
NestMembers:
android.service.voice.AlwaysOnHotwordDetector$Callback android.service.voice.AlwaysOnHotwordDetector$EventPayload android.service.voice.AlwaysOnHotwordDetector$ManageActions android.service.voice.AlwaysOnHotwordDetector$MyHandler android.service.voice.AlwaysOnHotwordDetector$RecognitionFlags android.service.voice.AlwaysOnHotwordDetector$RecognitionModes android.service.voice.AlwaysOnHotwordDetector$RefreshAvailabiltyTask android.service.voice.AlwaysOnHotwordDetector$SoundTriggerListener
InnerClasses:
public ConfidenceLevel = android.hardware.soundtrigger.SoundTrigger$ConfidenceLevel of android.hardware.soundtrigger.SoundTrigger
public KeyphraseRecognitionExtra = android.hardware.soundtrigger.SoundTrigger$KeyphraseRecognitionExtra of android.hardware.soundtrigger.SoundTrigger
public RecognitionConfig = android.hardware.soundtrigger.SoundTrigger$RecognitionConfig of android.hardware.soundtrigger.SoundTrigger
public abstract Callback = android.service.voice.AlwaysOnHotwordDetector$Callback of android.service.voice.AlwaysOnHotwordDetector
public EventPayload = android.service.voice.AlwaysOnHotwordDetector$EventPayload of android.service.voice.AlwaysOnHotwordDetector
private abstract ManageActions = android.service.voice.AlwaysOnHotwordDetector$ManageActions of android.service.voice.AlwaysOnHotwordDetector
MyHandler = android.service.voice.AlwaysOnHotwordDetector$MyHandler of android.service.voice.AlwaysOnHotwordDetector
public abstract RecognitionFlags = android.service.voice.AlwaysOnHotwordDetector$RecognitionFlags of android.service.voice.AlwaysOnHotwordDetector
public abstract RecognitionModes = android.service.voice.AlwaysOnHotwordDetector$RecognitionModes of android.service.voice.AlwaysOnHotwordDetector
RefreshAvailabiltyTask = android.service.voice.AlwaysOnHotwordDetector$RefreshAvailabiltyTask of android.service.voice.AlwaysOnHotwordDetector
final SoundTriggerListener = android.service.voice.AlwaysOnHotwordDetector$SoundTriggerListener of android.service.voice.AlwaysOnHotwordDetector