class android.widget.QuickContactBadge$QueryHandler extends android.content.AsyncQueryHandler
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: android.widget.QuickContactBadge$QueryHandler
super_class: android.content.AsyncQueryHandler
{
final android.widget.QuickContactBadge this$0;
descriptor: Landroid/widget/QuickContactBadge;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(android.widget.QuickContactBadge, android.content.ContentResolver);
descriptor: (Landroid/widget/QuickContactBadge;Landroid/content/ContentResolver;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 // android.widget.QuickContactBadge$QueryHandler this
start local 2 // android.content.ContentResolver cr
0: .line 339
aload 0 /* this */
aload 1
putfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
1: .line 340
aload 0 /* this */
aload 2 /* cr */
invokespecial android.content.AsyncQueryHandler.<init>:(Landroid/content/ContentResolver;)V
2: .line 341
return
end local 2 // android.content.ContentResolver cr
end local 0 // android.widget.QuickContactBadge$QueryHandler this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/QuickContactBadge$QueryHandler;
0 3 2 cr Landroid/content/ContentResolver;
MethodParameters:
Name Flags
this$0 final
cr
protected void onQueryComplete(int, java.lang.Object, android.database.Cursor);
descriptor: (ILjava/lang/Object;Landroid/database/Cursor;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=12, args_size=4
start local 0 // android.widget.QuickContactBadge$QueryHandler this
start local 1 // int token
start local 2 // java.lang.Object cookie
start local 3 // android.database.Cursor cursor
0: .line 345
aconst_null
astore 4 /* lookupUri */
start local 4 // android.net.Uri lookupUri
1: .line 346
aconst_null
astore 5 /* createUri */
start local 5 // android.net.Uri createUri
2: .line 347
iconst_0
istore 6 /* trigger */
start local 6 // boolean trigger
3: .line 348
aload 2 /* cookie */
ifnull 4
aload 2 /* cookie */
checkcast android.os.Bundle
goto 5
StackMap locals: android.net.Uri android.net.Uri int
StackMap stack:
4: new android.os.Bundle
dup
invokespecial android.os.Bundle.<init>:()V
StackMap locals:
StackMap stack: android.os.Bundle
5: astore 7 /* extras */
start local 7 // android.os.Bundle extras
6: .line 350
iload 1 /* token */
tableswitch { // 0 - 3
0: 18
1: 9
2: 14
3: 7
default: 22
}
7: .line 352
StackMap locals: android.os.Bundle
StackMap stack:
iconst_1
istore 6 /* trigger */
8: .line 353
ldc "tel"
aload 7 /* extras */
ldc "uri_content"
invokevirtual android.os.Bundle.getString:(Ljava/lang/String;)Ljava/lang/String;
aconst_null
invokestatic android.net.Uri.fromParts:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
astore 5 /* createUri */
9: .line 357
StackMap locals:
StackMap stack:
aload 3 /* cursor */
ifnull 27
aload 3 /* cursor */
invokeinterface android.database.Cursor.moveToFirst:()Z
ifeq 27
10: .line 358
aload 3 /* cursor */
iconst_0
invokeinterface android.database.Cursor.getLong:(I)J
lstore 8 /* contactId */
start local 8 // long contactId
11: .line 359
aload 3 /* cursor */
iconst_1
invokeinterface android.database.Cursor.getString:(I)Ljava/lang/String;
astore 10 /* lookupKey */
start local 10 // java.lang.String lookupKey
12: .line 360
lload 8 /* contactId */
aload 10 /* lookupKey */
invokestatic android.provider.ContactsContract$Contacts.getLookupUri:(JLjava/lang/String;)Landroid/net/Uri;
astore 4 /* lookupUri */
end local 10 // java.lang.String lookupKey
end local 8 // long contactId
13: .line 363
goto 27
14: .line 366
StackMap locals:
StackMap stack:
iconst_1
istore 6 /* trigger */
15: .line 367
ldc "mailto"
16: .line 368
aload 7 /* extras */
ldc "uri_content"
invokevirtual android.os.Bundle.getString:(Ljava/lang/String;)Ljava/lang/String;
aconst_null
17: .line 367
invokestatic android.net.Uri.fromParts:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
astore 5 /* createUri */
18: .line 372
StackMap locals:
StackMap stack:
aload 3 /* cursor */
ifnull 27
aload 3 /* cursor */
invokeinterface android.database.Cursor.moveToFirst:()Z
ifeq 27
19: .line 373
aload 3 /* cursor */
iconst_0
invokeinterface android.database.Cursor.getLong:(I)J
lstore 8 /* contactId */
start local 8 // long contactId
20: .line 374
aload 3 /* cursor */
iconst_1
invokeinterface android.database.Cursor.getString:(I)Ljava/lang/String;
astore 10 /* lookupKey */
start local 10 // java.lang.String lookupKey
21: .line 375
lload 8 /* contactId */
aload 10 /* lookupKey */
invokestatic android.provider.ContactsContract$Contacts.getLookupUri:(JLjava/lang/String;)Landroid/net/Uri;
astore 4 /* lookupUri */
end local 10 // java.lang.String lookupKey
end local 8 // long contactId
22: .line 380
StackMap locals:
StackMap stack:
goto 27
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 11
24: .line 381
aload 3 /* cursor */
ifnull 26
25: .line 382
aload 3 /* cursor */
invokeinterface android.database.Cursor.close:()V
26: .line 384
StackMap locals: android.widget.QuickContactBadge$QueryHandler int java.lang.Object android.database.Cursor android.net.Uri android.net.Uri int android.os.Bundle top top top java.lang.Throwable
StackMap stack:
aload 11
athrow
27: .line 381
StackMap locals: android.widget.QuickContactBadge$QueryHandler int java.lang.Object android.database.Cursor android.net.Uri android.net.Uri int android.os.Bundle
StackMap stack:
aload 3 /* cursor */
ifnull 29
28: .line 382
aload 3 /* cursor */
invokeinterface android.database.Cursor.close:()V
29: .line 386
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
aload 4 /* lookupUri */
putfield android.widget.QuickContactBadge.mContactUri:Landroid/net/Uri;
30: .line 387
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
invokevirtual android.widget.QuickContactBadge.onContactUriChanged:()V
31: .line 389
iload 6 /* trigger */
ifeq 36
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
getfield android.widget.QuickContactBadge.mContactUri:Landroid/net/Uri;
ifnull 36
32: .line 391
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
invokevirtual android.widget.QuickContactBadge.getContext:()Landroid/content/Context;
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
getfield android.widget.QuickContactBadge.mContactUri:Landroid/net/Uri;
33: .line 392
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
getfield android.widget.QuickContactBadge.mExcludeMimes:[Ljava/lang/String;
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
getfield android.widget.QuickContactBadge.mPrioritizedMimeType:Ljava/lang/String;
34: .line 391
invokestatic android.provider.ContactsContract$QuickContact.showQuickContact:(Landroid/content/Context;Landroid/view/View;Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;)V
35: .line 393
goto 42
StackMap locals:
StackMap stack:
36: aload 5 /* createUri */
ifnull 42
37: .line 395
new android.content.Intent
dup
ldc "com.android.contacts.action.SHOW_OR_CREATE_CONTACT"
aload 5 /* createUri */
invokespecial android.content.Intent.<init>:(Ljava/lang/String;Landroid/net/Uri;)V
astore 8 /* intent */
start local 8 // android.content.Intent intent
38: .line 396
aload 7 /* extras */
ifnull 41
39: .line 397
aload 7 /* extras */
ldc "uri_content"
invokevirtual android.os.Bundle.remove:(Ljava/lang/String;)V
40: .line 398
aload 8 /* intent */
aload 7 /* extras */
invokevirtual android.content.Intent.putExtras:(Landroid/os/Bundle;)Landroid/content/Intent;
pop
41: .line 400
StackMap locals: android.content.Intent
StackMap stack:
aload 0 /* this */
getfield android.widget.QuickContactBadge$QueryHandler.this$0:Landroid/widget/QuickContactBadge;
invokevirtual android.widget.QuickContactBadge.getContext:()Landroid/content/Context;
aload 8 /* intent */
invokevirtual android.content.Context.startActivity:(Landroid/content/Intent;)V
end local 8 // android.content.Intent intent
42: .line 402
StackMap locals:
StackMap stack:
return
end local 7 // android.os.Bundle extras
end local 6 // boolean trigger
end local 5 // android.net.Uri createUri
end local 4 // android.net.Uri lookupUri
end local 3 // android.database.Cursor cursor
end local 2 // java.lang.Object cookie
end local 1 // int token
end local 0 // android.widget.QuickContactBadge$QueryHandler this
LocalVariableTable:
Start End Slot Name Signature
0 43 0 this Landroid/widget/QuickContactBadge$QueryHandler;
0 43 1 token I
0 43 2 cookie Ljava/lang/Object;
0 43 3 cursor Landroid/database/Cursor;
1 43 4 lookupUri Landroid/net/Uri;
2 43 5 createUri Landroid/net/Uri;
3 43 6 trigger Z
6 43 7 extras Landroid/os/Bundle;
11 13 8 contactId J
12 13 10 lookupKey Ljava/lang/String;
20 22 8 contactId J
21 22 10 lookupKey Ljava/lang/String;
38 42 8 intent Landroid/content/Intent;
Exception table:
from to target type
6 23 23 any
MethodParameters:
Name Flags
token
cookie
cursor
}
SourceFile: "QuickContactBadge.java"
NestHost: android.widget.QuickContactBadge
InnerClasses:
public Contacts = android.provider.ContactsContract$Contacts of android.provider.ContactsContract
public final QuickContact = android.provider.ContactsContract$QuickContact of android.provider.ContactsContract
private QueryHandler = android.widget.QuickContactBadge$QueryHandler of android.widget.QuickContactBadge