public class android.provider.ContactsContract$Contacts implements android.provider.BaseColumns, android.provider.ContactsContract$ContactsColumns, android.provider.ContactsContract$ContactOptionsColumns, android.provider.ContactsContract$ContactNameColumns, android.provider.ContactsContract$ContactStatusColumns, android.provider.ContactsContract$ContactCounts
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.provider.ContactsContract$Contacts
super_class: java.lang.Object
{
public static final android.net.Uri CONTENT_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri CORP_CONTENT_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri CONTENT_LOOKUP_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri CONTENT_VCARD_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.String QUERY_PARAMETER_VCARD_NO_PHOTO;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "no_photo"
public static final android.net.Uri CONTENT_MULTI_VCARD_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri CONTENT_FILTER_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri ENTERPRISE_CONTENT_FILTER_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri CONTENT_STREQUENT_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri CONTENT_FREQUENT_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri CONTENT_STREQUENT_FILTER_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri CONTENT_GROUP_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.String CONTENT_TYPE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "vnd.android.cursor.dir/contact"
public static final java.lang.String CONTENT_ITEM_TYPE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "vnd.android.cursor.item/contact"
public static final java.lang.String CONTENT_VCARD_TYPE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "text/x-vcard"
public static long ENTERPRISE_CONTACT_ID_BASE;
descriptor: J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
public static java.lang.String ENTERPRISE_CONTACT_LOOKUP_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic android.provider.ContactsContract.AUTHORITY_URI:Landroid/net/Uri;
ldc "contacts"
invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
1: getstatic android.provider.ContactsContract.AUTHORITY_URI:Landroid/net/Uri;
2: ldc "contacts_corp"
3: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CORP_CONTENT_URI:Landroid/net/Uri;
4: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
5: ldc "lookup"
6: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_LOOKUP_URI:Landroid/net/Uri;
7: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
8: ldc "as_vcard"
9: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_VCARD_URI:Landroid/net/Uri;
10: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
11: ldc "as_multi_vcard"
12: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_MULTI_VCARD_URI:Landroid/net/Uri;
13: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
ldc "filter"
14: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_FILTER_URI:Landroid/net/Uri;
15: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
ldc "filter_enterprise"
16: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.ENTERPRISE_CONTENT_FILTER_URI:Landroid/net/Uri;
17: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
ldc "strequent"
18: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_STREQUENT_URI:Landroid/net/Uri;
19: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
ldc "frequent"
20: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_FREQUENT_URI:Landroid/net/Uri;
21: getstatic android.provider.ContactsContract$Contacts.CONTENT_STREQUENT_URI:Landroid/net/Uri;
ldc "filter"
22: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_STREQUENT_FILTER_URI:Landroid/net/Uri;
23: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
ldc "group"
24: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
putstatic android.provider.ContactsContract$Contacts.CONTENT_GROUP_URI:Landroid/net/Uri;
25: ldc 1000000000
putstatic android.provider.ContactsContract$Contacts.ENTERPRISE_CONTACT_ID_BASE:J
26: ldc "c-"
putstatic android.provider.ContactsContract$Contacts.ENTERPRISE_CONTACT_LOOKUP_PREFIX:Ljava/lang/String;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/provider/ContactsContract$Contacts;
public static android.net.Uri getLookupUri(android.content.ContentResolver, android.net.Uri);
descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;)Landroid/net/Uri;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_2
anewarray java.lang.String
dup
iconst_0
1: ldc "lookup"
aastore
dup
iconst_1
ldc "_id"
aastore
2: aconst_null
aconst_null
aconst_null
3: invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
astore 2
start local 2 4: aload 2
ifnonnull 6
5: aconst_null
areturn
6: StackMap locals: android.database.Cursor
StackMap stack:
aload 2
invokeinterface android.database.Cursor.moveToFirst:()Z
ifeq 15
7: aload 2
iconst_0
invokeinterface android.database.Cursor.getString:(I)Ljava/lang/String;
astore 3
start local 3 8: aload 2
iconst_1
invokeinterface android.database.Cursor.getLong:(I)J
lstore 4
start local 4 9: lload 4
aload 3
invokestatic android.provider.ContactsContract$Contacts.getLookupUri:(JLjava/lang/String;)Landroid/net/Uri;
astore 7
10: aload 2
invokeinterface android.database.Cursor.close:()V
11: aload 7
areturn
end local 4 end local 3 12: StackMap locals:
StackMap stack: java.lang.Throwable
astore 6
13: aload 2
invokeinterface android.database.Cursor.close:()V
14: aload 6
athrow
15: StackMap locals:
StackMap stack:
aload 2
invokeinterface android.database.Cursor.close:()V
16: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 resolver Landroid/content/ContentResolver;
0 17 1 contactUri Landroid/net/Uri;
4 17 2 c Landroid/database/Cursor;
8 12 3 lookupKey Ljava/lang/String;
9 12 4 contactId J
Exception table:
from to target type
6 10 12 any
MethodParameters:
Name Flags
resolver
contactUri
public static android.net.Uri getLookupUri(long, java.lang.String);
descriptor: (JLjava/lang/String;)Landroid/net/Uri;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 2 0: aload 2
invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
getstatic android.provider.ContactsContract$Contacts.CONTENT_LOOKUP_URI:Landroid/net/Uri;
3: aload 2
4: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
5: lload 0
6: invokestatic android.content.ContentUris.withAppendedId:(Landroid/net/Uri;J)Landroid/net/Uri;
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 contactId J
0 7 2 lookupKey Ljava/lang/String;
MethodParameters:
Name Flags
contactId
lookupKey
public static android.net.Uri lookupContact(android.content.ContentResolver, android.net.Uri);
descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;)Landroid/net/Uri;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "_id"
aastore
aconst_null
aconst_null
aconst_null
invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
astore 2
start local 2 3: aload 2
ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: android.database.Cursor
StackMap stack:
aload 2
invokeinterface android.database.Cursor.moveToFirst:()Z
ifeq 13
6: aload 2
iconst_0
invokeinterface android.database.Cursor.getLong:(I)J
lstore 3
start local 3 7: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
lload 3
invokestatic android.content.ContentUris.withAppendedId:(Landroid/net/Uri;J)Landroid/net/Uri;
astore 6
8: aload 2
invokeinterface android.database.Cursor.close:()V
9: aload 6
areturn
end local 3 10: StackMap locals:
StackMap stack: java.lang.Throwable
astore 5
11: aload 2
invokeinterface android.database.Cursor.close:()V
12: aload 5
athrow
13: StackMap locals:
StackMap stack:
aload 2
invokeinterface android.database.Cursor.close:()V
14: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 resolver Landroid/content/ContentResolver;
0 15 1 lookupUri Landroid/net/Uri;
3 15 2 c Landroid/database/Cursor;
7 10 3 contactId J
Exception table:
from to target type
5 8 10 any
MethodParameters:
Name Flags
resolver
lookupUri
public static void markAsContacted(android.content.ContentResolver, long);
descriptor: (Landroid/content/ContentResolver;J)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: getstatic android.provider.ContactsContract$Contacts.CONTENT_URI:Landroid/net/Uri;
lload 1
invokestatic android.content.ContentUris.withAppendedId:(Landroid/net/Uri;J)Landroid/net/Uri;
astore 3
start local 3 1: new android.content.ContentValues
dup
invokespecial android.content.ContentValues.<init>:()V
astore 4
start local 4 2: aload 4
ldc "last_time_contacted"
invokestatic java.lang.System.currentTimeMillis:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual android.content.ContentValues.put:(Ljava/lang/String;Ljava/lang/Long;)V
3: aload 0
aload 3
aload 4
aconst_null
aconst_null
invokevirtual android.content.ContentResolver.update:(Landroid/net/Uri;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
pop
4: return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 resolver Landroid/content/ContentResolver;
0 5 1 contactId J
1 5 3 uri Landroid/net/Uri;
2 5 4 values Landroid/content/ContentValues;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
resolver
contactId
public static boolean isEnterpriseContactId(long);
descriptor: (J)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
getstatic android.provider.ContactsContract$Contacts.ENTERPRISE_CONTACT_ID_BASE:J
lcmp
iflt 1
lload 0
ldc 9223372034707292160
lcmp
ifge 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 contactId J
MethodParameters:
Name Flags
contactId
public static java.io.InputStream openContactPhotoInputStream(android.content.ContentResolver, android.net.Uri, boolean);
descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;Z)Ljava/io/InputStream;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifeq 9
1: aload 1
2: ldc "display_photo"
3: invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
astore 3
start local 3 4: aload 0
aload 3
ldc "r"
invokevirtual android.content.ContentResolver.openAssetFileDescriptor:(Landroid/net/Uri;Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;
astore 4
start local 4 5: aload 4
ifnull 9
6: aload 4
invokevirtual android.content.res.AssetFileDescriptor.createInputStream:()Ljava/io/FileInputStream;
7: areturn
end local 4 8: StackMap locals: android.content.ContentResolver android.net.Uri int android.net.Uri
StackMap stack: java.io.IOException
pop
end local 3 9: StackMap locals:
StackMap stack:
aload 1
ldc "photo"
invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
astore 3
start local 3 10: aload 3
ifnonnull 12
11: aconst_null
areturn
12: StackMap locals: android.net.Uri
StackMap stack:
aload 0
aload 3
13: iconst_1
anewarray java.lang.String
dup
iconst_0
14: ldc "data15"
aastore
15: aconst_null
aconst_null
aconst_null
16: invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
astore 4
start local 4 17: aload 4
ifnull 18
aload 4
invokeinterface android.database.Cursor.moveToNext:()Z
ifne 21
18: StackMap locals: android.database.Cursor
StackMap stack:
aload 4
ifnull 20
19: aload 4
invokeinterface android.database.Cursor.close:()V
20: StackMap locals:
StackMap stack:
aconst_null
areturn
21: StackMap locals:
StackMap stack:
aload 4
iconst_0
invokeinterface android.database.Cursor.getBlob:(I)[B
astore 5
start local 5 22: aload 5
ifnonnull 26
23: aload 4
ifnull 25
24: aload 4
invokeinterface android.database.Cursor.close:()V
25: StackMap locals: byte[]
StackMap stack:
aconst_null
areturn
26: StackMap locals:
StackMap stack:
new java.io.ByteArrayInputStream
dup
aload 5
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
astore 7
27: aload 4
ifnull 29
28: aload 4
invokeinterface android.database.Cursor.close:()V
29: StackMap locals: android.content.ContentResolver android.net.Uri int android.net.Uri android.database.Cursor byte[] top java.io.InputStream
StackMap stack:
aload 7
areturn
end local 5 30: StackMap locals: android.content.ContentResolver android.net.Uri int android.net.Uri android.database.Cursor
StackMap stack: java.lang.Throwable
astore 6
31: aload 4
ifnull 33
32: aload 4
invokeinterface android.database.Cursor.close:()V
33: StackMap locals: android.content.ContentResolver android.net.Uri int android.net.Uri android.database.Cursor top java.lang.Throwable
StackMap stack:
aload 6
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 cr Landroid/content/ContentResolver;
0 34 1 contactUri Landroid/net/Uri;
0 34 2 preferHighres Z
4 9 3 displayPhotoUri Landroid/net/Uri;
5 8 4 fd Landroid/content/res/AssetFileDescriptor;
10 34 3 photoUri Landroid/net/Uri;
17 34 4 cursor Landroid/database/Cursor;
22 30 5 data [B
Exception table:
from to target type
4 7 8 Class java.io.IOException
17 18 30 any
21 23 30 any
26 27 30 any
MethodParameters:
Name Flags
cr
contactUri
preferHighres
public static java.io.InputStream openContactPhotoInputStream(android.content.ContentResolver, android.net.Uri);
descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;)Ljava/io/InputStream;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokestatic android.provider.ContactsContract$Contacts.openContactPhotoInputStream:(Landroid/content/ContentResolver;Landroid/net/Uri;Z)Ljava/io/InputStream;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 cr Landroid/content/ContentResolver;
0 1 1 contactUri Landroid/net/Uri;
MethodParameters:
Name Flags
cr
contactUri
}
SourceFile: "ContactsContract.java"
NestHost: android.provider.ContactsContract
InnerClasses:
abstract ContactCounts = android.provider.ContactsContract$ContactCounts of android.provider.ContactsContract
protected abstract ContactNameColumns = android.provider.ContactsContract$ContactNameColumns of android.provider.ContactsContract
protected abstract ContactOptionsColumns = android.provider.ContactsContract$ContactOptionsColumns of android.provider.ContactsContract
protected abstract ContactStatusColumns = android.provider.ContactsContract$ContactStatusColumns of android.provider.ContactsContract
public Contacts = android.provider.ContactsContract$Contacts of android.provider.ContactsContract
public final AggregationSuggestions = android.provider.ContactsContract$Contacts$AggregationSuggestions of android.provider.ContactsContract$Contacts
public final Data = android.provider.ContactsContract$Contacts$Data of android.provider.ContactsContract$Contacts
public final Entity = android.provider.ContactsContract$Contacts$Entity of android.provider.ContactsContract$Contacts
public final Photo = android.provider.ContactsContract$Contacts$Photo of android.provider.ContactsContract$Contacts
public final StreamItems = android.provider.ContactsContract$Contacts$StreamItems of android.provider.ContactsContract$Contacts
protected abstract ContactsColumns = android.provider.ContactsContract$ContactsColumns of android.provider.ContactsContract