public final class android.provider.MediaStore$Images$Media implements android.provider.MediaStore$Images$ImageColumns
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: android.provider.MediaStore$Images$Media
super_class: java.lang.Object
{
public static final android.net.Uri INTERNAL_CONTENT_URI;
descriptor: Landroid/net/Uri;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final android.net.Uri EXTERNAL_CONTENT_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/image"
public static final java.lang.String DEFAULT_SORT_ORDER;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "bucket_display_name"
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "internal"
invokestatic android.provider.MediaStore$Images$Media.getContentUri:(Ljava/lang/String;)Landroid/net/Uri;
1: putstatic android.provider.MediaStore$Images$Media.INTERNAL_CONTENT_URI:Landroid/net/Uri;
2: ldc "external"
invokestatic android.provider.MediaStore$Images$Media.getContentUri:(Ljava/lang/String;)Landroid/net/Uri;
3: putstatic android.provider.MediaStore$Images$Media.EXTERNAL_CONTENT_URI:Landroid/net/Uri;
4: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
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/MediaStore$Images$Media;
public static final android.database.Cursor query(android.content.ContentResolver, android.net.Uri, java.lang.String[]);
descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;[Ljava/lang/String;)Landroid/database/Cursor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aconst_null
aconst_null
ldc "bucket_display_name"
invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 cr Landroid/content/ContentResolver;
0 1 1 uri Landroid/net/Uri;
0 1 2 projection [Ljava/lang/String;
MethodParameters:
Name Flags
cr
uri
projection
public static final android.database.Cursor query(android.content.ContentResolver, android.net.Uri, java.lang.String[], java.lang.String, java.lang.String);
descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
1: aconst_null
aload 4
ifnonnull 2
ldc "bucket_display_name"
goto 3
StackMap locals: android.content.ContentResolver android.net.Uri java.lang.String[] java.lang.String java.lang.String
StackMap stack: android.content.ContentResolver android.net.Uri java.lang.String[] java.lang.String null
2: aload 4
3: StackMap locals: android.content.ContentResolver android.net.Uri java.lang.String[] java.lang.String java.lang.String
StackMap stack: android.content.ContentResolver android.net.Uri java.lang.String[] java.lang.String null java.lang.String
invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 cr Landroid/content/ContentResolver;
0 4 1 uri Landroid/net/Uri;
0 4 2 projection [Ljava/lang/String;
0 4 3 where Ljava/lang/String;
0 4 4 orderBy Ljava/lang/String;
MethodParameters:
Name Flags
cr
uri
projection
where
orderBy
public static final android.database.Cursor query(android.content.ContentResolver, android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String);
descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
aload 3
1: aload 4
aload 5
ifnonnull 2
ldc "bucket_display_name"
goto 3
StackMap locals: android.content.ContentResolver android.net.Uri java.lang.String[] java.lang.String java.lang.String[] java.lang.String
StackMap stack: android.content.ContentResolver android.net.Uri java.lang.String[] java.lang.String java.lang.String[]
2: aload 5
3: StackMap locals: android.content.ContentResolver android.net.Uri java.lang.String[] java.lang.String java.lang.String[] java.lang.String
StackMap stack: android.content.ContentResolver android.net.Uri java.lang.String[] java.lang.String java.lang.String[] java.lang.String
invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
areturn
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 4 0 cr Landroid/content/ContentResolver;
0 4 1 uri Landroid/net/Uri;
0 4 2 projection [Ljava/lang/String;
0 4 3 selection Ljava/lang/String;
0 4 4 selectionArgs [Ljava/lang/String;
0 4 5 orderBy Ljava/lang/String;
MethodParameters:
Name Flags
cr
uri
projection
selection
selectionArgs
orderBy
public static final android.graphics.Bitmap getBitmap(android.content.ContentResolver, android.net.Uri);
descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;)Landroid/graphics/Bitmap;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual android.content.ContentResolver.openInputStream:(Landroid/net/Uri;)Ljava/io/InputStream;
astore 2
start local 2 1: aload 2
invokestatic android.graphics.BitmapFactory.decodeStream:(Ljava/io/InputStream;)Landroid/graphics/Bitmap;
astore 3
start local 3 2: aload 2
invokevirtual java.io.InputStream.close:()V
3: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 cr Landroid/content/ContentResolver;
0 4 1 url Landroid/net/Uri;
1 4 2 input Ljava/io/InputStream;
2 4 3 bitmap Landroid/graphics/Bitmap;
Exceptions:
throws java.io.FileNotFoundException, java.io.IOException
MethodParameters:
Name Flags
cr
url
public static final java.lang.String insertImage(android.content.ContentResolver, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=4, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
astore 4
start local 4 1: aload 1
invokestatic android.graphics.BitmapFactory.decodeFile:(Ljava/lang/String;)Landroid/graphics/Bitmap;
astore 5
start local 5 2: aload 0
aload 5
aload 2
aload 3
invokestatic android.provider.MediaStore$Images$Media.insertImage:(Landroid/content/ContentResolver;Landroid/graphics/Bitmap;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 6
start local 6 3: aload 5
invokevirtual android.graphics.Bitmap.recycle:()V
4: aload 6
astore 8
5: aload 4
invokevirtual java.io.FileInputStream.close:()V
6: goto 8
StackMap locals: android.content.ContentResolver java.lang.String java.lang.String java.lang.String java.io.FileInputStream android.graphics.Bitmap java.lang.String top java.lang.String
StackMap stack: java.io.IOException
7: pop
8: StackMap locals:
StackMap stack:
aload 8
areturn
end local 6 end local 5 9: StackMap locals: android.content.ContentResolver java.lang.String java.lang.String java.lang.String java.io.FileInputStream
StackMap stack: java.lang.Throwable
astore 7
10: aload 4
invokevirtual java.io.FileInputStream.close:()V
11: goto 13
StackMap locals: android.content.ContentResolver java.lang.String java.lang.String java.lang.String java.io.FileInputStream top top java.lang.Throwable
StackMap stack: java.io.IOException
12: pop
13: StackMap locals:
StackMap stack:
aload 7
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 cr Landroid/content/ContentResolver;
0 14 1 imagePath Ljava/lang/String;
0 14 2 name Ljava/lang/String;
0 14 3 description Ljava/lang/String;
1 14 4 stream Ljava/io/FileInputStream;
2 9 5 bm Landroid/graphics/Bitmap;
3 9 6 ret Ljava/lang/String;
Exception table:
from to target type
5 6 7 Class java.io.IOException
1 5 9 any
10 11 12 Class java.io.IOException
Exceptions:
throws java.io.FileNotFoundException
MethodParameters:
Name Flags
cr
imagePath
name
description
private static final android.graphics.Bitmap StoreThumbnail(android.content.ContentResolver, android.graphics.Bitmap, long, float, float, int);
descriptor: (Landroid/content/ContentResolver;Landroid/graphics/Bitmap;JFFI)Landroid/graphics/Bitmap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=7, locals=14, args_size=6
start local 0 start local 1 start local 2 start local 4 start local 5 start local 6 0: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 7
start local 7 1: fload 4
aload 1
invokevirtual android.graphics.Bitmap.getWidth:()I
i2f
fdiv
fstore 8
start local 8 2: fload 5
aload 1
invokevirtual android.graphics.Bitmap.getHeight:()I
i2f
fdiv
fstore 9
start local 9 3: aload 7
fload 8
fload 9
invokevirtual android.graphics.Matrix.setScale:(FF)V
4: aload 1
iconst_0
iconst_0
5: aload 1
invokevirtual android.graphics.Bitmap.getWidth:()I
6: aload 1
invokevirtual android.graphics.Bitmap.getHeight:()I
aload 7
7: iconst_1
8: invokestatic android.graphics.Bitmap.createBitmap:(Landroid/graphics/Bitmap;IIIILandroid/graphics/Matrix;Z)Landroid/graphics/Bitmap;
astore 10
start local 10 9: new android.content.ContentValues
dup
iconst_4
invokespecial android.content.ContentValues.<init>:(I)V
astore 11
start local 11 10: aload 11
ldc "kind"
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual android.content.ContentValues.put:(Ljava/lang/String;Ljava/lang/Integer;)V
11: aload 11
ldc "image_id"
lload 2
l2i
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual android.content.ContentValues.put:(Ljava/lang/String;Ljava/lang/Integer;)V
12: aload 11
ldc "height"
aload 10
invokevirtual android.graphics.Bitmap.getHeight:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual android.content.ContentValues.put:(Ljava/lang/String;Ljava/lang/Integer;)V
13: aload 11
ldc "width"
aload 10
invokevirtual android.graphics.Bitmap.getWidth:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual android.content.ContentValues.put:(Ljava/lang/String;Ljava/lang/Integer;)V
14: aload 0
getstatic android.provider.MediaStore$Images$Thumbnails.EXTERNAL_CONTENT_URI:Landroid/net/Uri;
aload 11
invokevirtual android.content.ContentResolver.insert:(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
astore 12
start local 12 15: aload 0
aload 12
invokevirtual android.content.ContentResolver.openOutputStream:(Landroid/net/Uri;)Ljava/io/OutputStream;
astore 13
start local 13 16: aload 10
getstatic android.graphics.Bitmap$CompressFormat.JPEG:Landroid/graphics/Bitmap$CompressFormat;
bipush 100
aload 13
invokevirtual android.graphics.Bitmap.compress:(Landroid/graphics/Bitmap$CompressFormat;ILjava/io/OutputStream;)Z
pop
17: aload 13
invokevirtual java.io.OutputStream.close:()V
18: aload 10
19: areturn
end local 13 20: StackMap locals: android.content.ContentResolver android.graphics.Bitmap long float float int android.graphics.Matrix float float android.graphics.Bitmap android.content.ContentValues android.net.Uri
StackMap stack: java.io.FileNotFoundException
pop
21: aconst_null
areturn
22: StackMap locals:
StackMap stack: java.io.IOException
pop
23: aconst_null
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 cr Landroid/content/ContentResolver;
0 24 1 source Landroid/graphics/Bitmap;
0 24 2 id J
0 24 4 width F
0 24 5 height F
0 24 6 kind I
1 24 7 matrix Landroid/graphics/Matrix;
2 24 8 scaleX F
3 24 9 scaleY F
9 24 10 thumb Landroid/graphics/Bitmap;
10 24 11 values Landroid/content/ContentValues;
15 24 12 url Landroid/net/Uri;
16 20 13 thumbOut Ljava/io/OutputStream;
Exception table:
from to target type
15 19 20 Class java.io.FileNotFoundException
15 19 22 Class java.io.IOException
MethodParameters:
Name Flags
cr
source
id
width
height
kind
public static final java.lang.String insertImage(android.content.ContentResolver, android.graphics.Bitmap, java.lang.String, java.lang.String);
descriptor: (Landroid/content/ContentResolver;Landroid/graphics/Bitmap;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=7, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new android.content.ContentValues
dup
invokespecial android.content.ContentValues.<init>:()V
astore 4
start local 4 1: aload 4
ldc "title"
aload 2
invokevirtual android.content.ContentValues.put:(Ljava/lang/String;Ljava/lang/String;)V
2: aload 4
ldc "description"
aload 3
invokevirtual android.content.ContentValues.put:(Ljava/lang/String;Ljava/lang/String;)V
3: aload 4
ldc "mime_type"
ldc "image/jpeg"
invokevirtual android.content.ContentValues.put:(Ljava/lang/String;Ljava/lang/String;)V
4: aconst_null
astore 5
start local 5 5: aconst_null
astore 6
start local 6 6: aload 0
getstatic android.provider.MediaStore$Images$Media.EXTERNAL_CONTENT_URI:Landroid/net/Uri;
aload 4
invokevirtual android.content.ContentResolver.insert:(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
astore 5
7: aload 1
ifnull 23
8: aload 0
aload 5
invokevirtual android.content.ContentResolver.openOutputStream:(Landroid/net/Uri;)Ljava/io/OutputStream;
astore 7
start local 7 9: aload 1
getstatic android.graphics.Bitmap$CompressFormat.JPEG:Landroid/graphics/Bitmap$CompressFormat;
bipush 50
aload 7
invokevirtual android.graphics.Bitmap.compress:(Landroid/graphics/Bitmap$CompressFormat;ILjava/io/OutputStream;)Z
pop
10: goto 14
StackMap locals: android.content.ContentResolver android.graphics.Bitmap java.lang.String java.lang.String android.content.ContentValues android.net.Uri java.lang.String java.io.OutputStream
StackMap stack: java.lang.Throwable
11: astore 8
12: aload 7
invokevirtual java.io.OutputStream.close:()V
13: aload 8
athrow
14: StackMap locals:
StackMap stack:
aload 7
invokevirtual java.io.OutputStream.close:()V
15: aload 5
invokestatic android.content.ContentUris.parseId:(Landroid/net/Uri;)J
lstore 8
start local 8 16: aload 0
lload 8
17: iconst_1
aconst_null
18: invokestatic android.provider.MediaStore$Images$Thumbnails.getThumbnail:(Landroid/content/ContentResolver;JILandroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap;
astore 10
start local 10 19: aload 0
aload 10
lload 8
ldc 50.0
ldc 50.0
20: iconst_3
21: invokestatic android.provider.MediaStore$Images$Media.StoreThumbnail:(Landroid/content/ContentResolver;Landroid/graphics/Bitmap;JFFI)Landroid/graphics/Bitmap;
pop
end local 10 end local 8 end local 7 22: goto 32
23: StackMap locals:
StackMap stack:
ldc "MediaStore"
ldc "Failed to create thumbnail, removing original"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
24: aload 0
aload 5
aconst_null
aconst_null
invokevirtual android.content.ContentResolver.delete:(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
pop
25: aconst_null
astore 5
26: goto 32
StackMap locals:
StackMap stack: java.lang.Exception
27: astore 7
start local 7 28: ldc "MediaStore"
ldc "Failed to insert image"
aload 7
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
29: aload 5
ifnull 32
30: aload 0
aload 5
aconst_null
aconst_null
invokevirtual android.content.ContentResolver.delete:(Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
pop
31: aconst_null
astore 5
end local 7 32: StackMap locals:
StackMap stack:
aload 5
ifnull 34
33: aload 5
invokevirtual android.net.Uri.toString:()Ljava/lang/String;
astore 6
34: StackMap locals:
StackMap stack:
aload 6
areturn
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 35 0 cr Landroid/content/ContentResolver;
0 35 1 source Landroid/graphics/Bitmap;
0 35 2 title Ljava/lang/String;
0 35 3 description Ljava/lang/String;
1 35 4 values Landroid/content/ContentValues;
5 35 5 url Landroid/net/Uri;
6 35 6 stringUrl Ljava/lang/String;
9 22 7 imageOut Ljava/io/OutputStream;
16 22 8 id J
19 22 10 miniThumb Landroid/graphics/Bitmap;
28 32 7 e Ljava/lang/Exception;
Exception table:
from to target type
9 11 11 any
6 26 27 Class java.lang.Exception
MethodParameters:
Name Flags
cr
source
title
description
public static android.net.Uri getContentUri(java.lang.String);
descriptor: (Ljava/lang/String;)Landroid/net/Uri;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "content://media/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc "/images/media"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.net.Uri.parse:(Ljava/lang/String;)Landroid/net/Uri;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 volumeName Ljava/lang/String;
MethodParameters:
Name Flags
volumeName
}
SourceFile: "MediaStore.java"
NestHost: android.provider.MediaStore
InnerClasses:
public final CompressFormat = android.graphics.Bitmap$CompressFormat of android.graphics.Bitmap
public Options = android.graphics.BitmapFactory$Options of android.graphics.BitmapFactory
public final Images = android.provider.MediaStore$Images of android.provider.MediaStore
public abstract ImageColumns = android.provider.MediaStore$Images$ImageColumns of android.provider.MediaStore$Images
public final Media = android.provider.MediaStore$Images$Media of android.provider.MediaStore$Images
public Thumbnails = android.provider.MediaStore$Images$Thumbnails of android.provider.MediaStore$Images