public final class android.graphics.drawable.Icon implements android.os.Parcelable
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: android.graphics.drawable.Icon
super_class: java.lang.Object
{
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Icon"
public static final int TYPE_BITMAP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int TYPE_RESOURCE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int TYPE_DATA;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int TYPE_URI;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int TYPE_ADAPTIVE_BITMAP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final int VERSION_STREAM_SERIALIZER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private final int mType;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private android.content.res.ColorStateList mTintList;
descriptor: Landroid/content/res/ColorStateList;
flags: (0x0002) ACC_PRIVATE
static final android.graphics.PorterDuff$Mode DEFAULT_TINT_MODE;
descriptor: Landroid/graphics/PorterDuff$Mode;
flags: (0x0018) ACC_STATIC, ACC_FINAL
private android.graphics.PorterDuff$Mode mTintMode;
descriptor: Landroid/graphics/PorterDuff$Mode;
flags: (0x0002) ACC_PRIVATE
private java.lang.Object mObj1;
descriptor: Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
private java.lang.String mString1;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private int mInt1;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mInt2;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public static final int MIN_ASHMEM_ICON_SIZE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 131072
public static final android.os.Parcelable$Creator<android.graphics.drawable.Icon> CREATOR;
descriptor: Landroid/os/Parcelable$Creator;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Landroid/os/Parcelable$Creator<Landroid/graphics/drawable/Icon;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic android.graphics.drawable.Drawable.DEFAULT_TINT_MODE:Landroid/graphics/PorterDuff$Mode;
putstatic android.graphics.drawable.Icon.DEFAULT_TINT_MODE:Landroid/graphics/PorterDuff$Mode;
1: new android.graphics.drawable.Icon$1
dup
invokespecial android.graphics.drawable.Icon$1.<init>:()V
2: putstatic android.graphics.drawable.Icon.CREATOR:Landroid/os/Parcelable$Creator;
3: return
LocalVariableTable:
Start End Slot Name Signature
public int getType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/graphics/drawable/Icon;
RuntimeInvisibleAnnotations:
android.graphics.drawable.Icon$IconType()
RuntimeInvisibleTypeAnnotations:
METHOD_RETURN
android.graphics.drawable.Icon$IconType()
public android.graphics.Bitmap getBitmap();
descriptor: ()Landroid/graphics/Bitmap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_1
if_icmpeq 2
aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_5
if_icmpeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "called getBitmap() on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
checkcast android.graphics.Bitmap
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/graphics/drawable/Icon;
private void setBitmap(android.graphics.Bitmap);
descriptor: (Landroid/graphics/Bitmap;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/graphics/drawable/Icon;
0 2 1 b Landroid/graphics/Bitmap;
MethodParameters:
Name Flags
b
public int getDataLength();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_3
if_icmpeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "called getDataLength() on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
dup
astore 1
monitorenter
3: aload 0
getfield android.graphics.drawable.Icon.mInt1:I
aload 1
monitorexit
4: ireturn
5: StackMap locals: android.graphics.drawable.Icon android.graphics.drawable.Icon
StackMap stack: java.lang.Throwable
aload 1
monitorexit
6: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/graphics/drawable/Icon;
Exception table:
from to target type
3 4 5 any
5 6 5 any
public int getDataOffset();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_3
if_icmpeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "called getDataOffset() on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
dup
astore 1
monitorenter
3: aload 0
getfield android.graphics.drawable.Icon.mInt2:I
aload 1
monitorexit
4: ireturn
5: StackMap locals: android.graphics.drawable.Icon android.graphics.drawable.Icon
StackMap stack: java.lang.Throwable
aload 1
monitorexit
6: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/graphics/drawable/Icon;
Exception table:
from to target type
3 4 5 any
5 6 5 any
public byte[] getDataBytes();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_3
if_icmpeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "called getDataBytes() on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
dup
astore 1
monitorenter
3: aload 0
getfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
checkcast byte[]
aload 1
monitorexit
4: areturn
5: StackMap locals: android.graphics.drawable.Icon android.graphics.drawable.Icon
StackMap stack: java.lang.Throwable
aload 1
monitorexit
6: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/graphics/drawable/Icon;
Exception table:
from to target type
3 4 5 any
5 6 5 any
public android.content.res.Resources getResources();
descriptor: ()Landroid/content/res/Resources;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_2
if_icmpeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "called getResources() on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
checkcast android.content.res.Resources
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/graphics/drawable/Icon;
public java.lang.String getResPackage();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_2
if_icmpeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "called getResPackage() on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/graphics/drawable/Icon;
public int getResId();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_2
if_icmpeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "called getResId() on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mInt1:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/graphics/drawable/Icon;
public java.lang.String getUriString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_4
if_icmpeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "called getUriString() on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/graphics/drawable/Icon;
public android.net.Uri getUri();
descriptor: ()Landroid/net/Uri;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual android.graphics.drawable.Icon.getUriString:()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 1 0 this Landroid/graphics/drawable/Icon;
private static final java.lang.String typeToString(int);
descriptor: (I)Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
tableswitch { // 1 - 5
1: 1
2: 4
3: 3
4: 5
5: 2
default: 6
}
1: StackMap locals:
StackMap stack:
ldc "BITMAP"
areturn
2: StackMap locals:
StackMap stack:
ldc "BITMAP_MASKABLE"
areturn
3: StackMap locals:
StackMap stack:
ldc "DATA"
areturn
4: StackMap locals:
StackMap stack:
ldc "RESOURCE"
areturn
5: StackMap locals:
StackMap stack:
ldc "URI"
areturn
6: StackMap locals:
StackMap stack:
ldc "UNKNOWN"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 x I
MethodParameters:
Name Flags
x
public void loadDrawableAsync(android.content.Context, android.os.Message);
descriptor: (Landroid/content/Context;Landroid/os/Message;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual android.os.Message.getTarget:()Landroid/os/Handler;
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "callback message must have a target handler"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon$LoadDrawableTask
dup
aload 0
aload 1
aload 2
invokespecial android.graphics.drawable.Icon$LoadDrawableTask.<init>:(Landroid/graphics/drawable/Icon;Landroid/content/Context;Landroid/os/Message;)V
invokevirtual android.graphics.drawable.Icon$LoadDrawableTask.runAsync:()V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/graphics/drawable/Icon;
0 4 1 context Landroid/content/Context;
0 4 2 andThen Landroid/os/Message;
MethodParameters:
Name Flags
context
andThen
public void loadDrawableAsync(android.content.Context, android.graphics.drawable.Icon$OnDrawableLoadedListener, android.os.Handler);
descriptor: (Landroid/content/Context;Landroid/graphics/drawable/Icon$OnDrawableLoadedListener;Landroid/os/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new android.graphics.drawable.Icon$LoadDrawableTask
dup
aload 0
aload 1
aload 3
aload 2
invokespecial android.graphics.drawable.Icon$LoadDrawableTask.<init>:(Landroid/graphics/drawable/Icon;Landroid/content/Context;Landroid/os/Handler;Landroid/graphics/drawable/Icon$OnDrawableLoadedListener;)V
invokevirtual android.graphics.drawable.Icon$LoadDrawableTask.runAsync:()V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/graphics/drawable/Icon;
0 2 1 context Landroid/content/Context;
0 2 2 listener Landroid/graphics/drawable/Icon$OnDrawableLoadedListener;
0 2 3 handler Landroid/os/Handler;
MethodParameters:
Name Flags
context
listener final
handler
public android.graphics.drawable.Drawable loadDrawable(android.content.Context);
descriptor: (Landroid/content/Context;)Landroid/graphics/drawable/Drawable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual android.graphics.drawable.Icon.loadDrawableInner:(Landroid/content/Context;)Landroid/graphics/drawable/Drawable;
astore 2
start local 2 1: aload 2
ifnull 5
aload 0
getfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
ifnonnull 2
aload 0
getfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
getstatic android.graphics.drawable.Icon.DEFAULT_TINT_MODE:Landroid/graphics/PorterDuff$Mode;
if_acmpeq 5
2: StackMap locals: android.graphics.drawable.Drawable
StackMap stack:
aload 2
invokevirtual android.graphics.drawable.Drawable.mutate:()Landroid/graphics/drawable/Drawable;
pop
3: aload 2
aload 0
getfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
invokevirtual android.graphics.drawable.Drawable.setTintList:(Landroid/content/res/ColorStateList;)V
4: aload 2
aload 0
getfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
invokevirtual android.graphics.drawable.Drawable.setTintMode:(Landroid/graphics/PorterDuff$Mode;)V
5: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/graphics/drawable/Icon;
0 6 1 context Landroid/content/Context;
1 6 2 result Landroid/graphics/drawable/Drawable;
MethodParameters:
Name Flags
context
private android.graphics.drawable.Drawable loadDrawableInner(android.content.Context);
descriptor: (Landroid/content/Context;)Landroid/graphics/drawable/Drawable;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
tableswitch { // 1 - 5
1: 1
2: 5
3: 36
4: 39
5: 2
default: 57
}
1: StackMap locals:
StackMap stack:
new android.graphics.drawable.BitmapDrawable
dup
aload 1
invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
invokespecial android.graphics.drawable.BitmapDrawable.<init>:(Landroid/content/res/Resources;Landroid/graphics/Bitmap;)V
areturn
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.AdaptiveIconDrawable
dup
aconst_null
3: new android.graphics.drawable.BitmapDrawable
dup
aload 1
invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
invokespecial android.graphics.drawable.BitmapDrawable.<init>:(Landroid/content/res/Resources;Landroid/graphics/Bitmap;)V
4: invokespecial android.graphics.drawable.AdaptiveIconDrawable.<init>:(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V
areturn
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getResources:()Landroid/content/res/Resources;
ifnonnull 26
6: aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
astore 2
start local 2 7: aload 2
invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
ifeq 9
8: aload 1
invokevirtual android.content.Context.getPackageName:()Ljava/lang/String;
astore 2
9: StackMap locals: java.lang.String
StackMap stack:
ldc "android"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
10: aload 0
invokestatic android.content.res.Resources.getSystem:()Landroid/content/res/Resources;
putfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
11: goto 26
12: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.content.Context.getPackageManager:()Landroid/content/pm/PackageManager;
astore 3
start local 3 13: aload 3
14: aload 2
sipush 8192
15: invokevirtual android.content.pm.PackageManager.getApplicationInfo:(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
astore 4
start local 4 16: aload 4
ifnull 57
17: aload 0
aload 3
aload 4
invokevirtual android.content.pm.PackageManager.getResourcesForApplication:(Landroid/content/pm/ApplicationInfo;)Landroid/content/res/Resources;
putfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
end local 4 18: goto 26
StackMap locals: android.graphics.drawable.Icon android.content.Context java.lang.String android.content.pm.PackageManager
StackMap stack: android.content.pm.PackageManager$NameNotFoundException
19: astore 4
start local 4 20: ldc "Icon"
ldc "Unable to find pkg=%s for icon %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
21: aload 2
aastore
dup
iconst_1
aload 0
aastore
22: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
23: aload 4
24: invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
25: goto 57
end local 4 end local 3 end local 2 26: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getResources:()Landroid/content/res/Resources;
aload 0
invokevirtual android.graphics.drawable.Icon.getResId:()I
aload 1
invokevirtual android.content.Context.getTheme:()Landroid/content/res/Resources$Theme;
invokevirtual android.content.res.Resources.getDrawable:(ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable;
27: areturn
28: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 2
start local 2 29: ldc "Icon"
ldc "Unable to load resource 0x%08x from pkg=%s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
30: aload 0
invokevirtual android.graphics.drawable.Icon.getResId:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
31: aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
aastore
32: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
33: aload 2
34: invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 2 35: goto 57
36: StackMap locals:
StackMap stack:
new android.graphics.drawable.BitmapDrawable
dup
aload 1
invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
37: aload 0
invokevirtual android.graphics.drawable.Icon.getDataBytes:()[B
aload 0
invokevirtual android.graphics.drawable.Icon.getDataOffset:()I
aload 0
invokevirtual android.graphics.drawable.Icon.getDataLength:()I
invokestatic android.graphics.BitmapFactory.decodeByteArray:([BII)Landroid/graphics/Bitmap;
38: invokespecial android.graphics.drawable.BitmapDrawable.<init>:(Landroid/content/res/Resources;Landroid/graphics/Bitmap;)V
areturn
39: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getUri:()Landroid/net/Uri;
astore 2
start local 2 40: aload 2
invokevirtual android.net.Uri.getScheme:()Ljava/lang/String;
astore 3
start local 3 41: aconst_null
astore 4
start local 4 42: ldc "content"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 44
43: ldc "file"
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 49
44: StackMap locals: android.net.Uri java.lang.String java.io.InputStream
StackMap stack:
aload 1
invokevirtual android.content.Context.getContentResolver:()Landroid/content/ContentResolver;
aload 2
invokevirtual android.content.ContentResolver.openInputStream:(Landroid/net/Uri;)Ljava/io/InputStream;
astore 4
45: goto 53
StackMap locals:
StackMap stack: java.lang.Exception
46: astore 5
start local 5 47: ldc "Icon"
new java.lang.StringBuilder
dup
ldc "Unable to load image from URI: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 5 48: goto 53
49: StackMap locals:
StackMap stack:
new java.io.FileInputStream
dup
new java.io.File
dup
aload 0
getfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 4
50: goto 53
StackMap locals:
StackMap stack: java.io.FileNotFoundException
51: astore 5
start local 5 52: ldc "Icon"
new java.lang.StringBuilder
dup
ldc "Unable to load image from path: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 5 53: StackMap locals:
StackMap stack:
aload 4
ifnull 57
54: new android.graphics.drawable.BitmapDrawable
dup
aload 1
invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
55: aload 4
invokestatic android.graphics.BitmapFactory.decodeStream:(Ljava/io/InputStream;)Landroid/graphics/Bitmap;
56: invokespecial android.graphics.drawable.BitmapDrawable.<init>:(Landroid/content/res/Resources;Landroid/graphics/Bitmap;)V
areturn
end local 4 end local 3 end local 2 57: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 58 0 this Landroid/graphics/drawable/Icon;
0 58 1 context Landroid/content/Context;
7 26 2 resPackage Ljava/lang/String;
13 26 3 pm Landroid/content/pm/PackageManager;
16 18 4 ai Landroid/content/pm/ApplicationInfo;
20 26 4 e Landroid/content/pm/PackageManager$NameNotFoundException;
29 35 2 e Ljava/lang/RuntimeException;
40 57 2 uri Landroid/net/Uri;
41 57 3 scheme Ljava/lang/String;
42 57 4 is Ljava/io/InputStream;
47 48 5 e Ljava/lang/Exception;
52 53 5 e Ljava/io/FileNotFoundException;
Exception table:
from to target type
13 18 19 Class android.content.pm.PackageManager$NameNotFoundException
26 27 28 Class java.lang.RuntimeException
44 45 46 Class java.lang.Exception
49 50 51 Class java.io.FileNotFoundException
MethodParameters:
Name Flags
context
public android.graphics.drawable.Drawable loadDrawableAsUser(android.content.Context, int);
descriptor: (Landroid/content/Context;I)Landroid/graphics/drawable/Drawable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_2
if_icmpne 15
1: aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
astore 3
start local 3 2: aload 3
invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
ifeq 4
3: aload 1
invokevirtual android.content.Context.getPackageName:()Ljava/lang/String;
astore 3
4: StackMap locals: java.lang.String
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getResources:()Landroid/content/res/Resources;
ifnonnull 15
aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
ldc "android"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 15
5: aload 1
invokevirtual android.content.Context.getPackageManager:()Landroid/content/pm/PackageManager;
astore 4
start local 4 6: aload 0
aload 4
aload 3
iload 2
invokevirtual android.content.pm.PackageManager.getResourcesForApplicationAsUser:(Ljava/lang/String;I)Landroid/content/res/Resources;
putfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
7: goto 15
StackMap locals: android.graphics.drawable.Icon android.content.Context int java.lang.String android.content.pm.PackageManager
StackMap stack: android.content.pm.PackageManager$NameNotFoundException
8: astore 5
start local 5 9: ldc "Icon"
ldc "Unable to find pkg=%s user=%d"
iconst_2
anewarray java.lang.Object
dup
iconst_0
10: aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
aastore
dup
iconst_1
11: iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
12: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
13: aload 5
14: invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 5 end local 4 end local 3 15: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual android.graphics.drawable.Icon.loadDrawable:(Landroid/content/Context;)Landroid/graphics/drawable/Drawable;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Landroid/graphics/drawable/Icon;
0 16 1 context Landroid/content/Context;
0 16 2 userId I
2 15 3 resPackage Ljava/lang/String;
6 15 4 pm Landroid/content/pm/PackageManager;
9 15 5 e Landroid/content/pm/PackageManager$NameNotFoundException;
Exception table:
from to target type
6 7 8 Class android.content.pm.PackageManager$NameNotFoundException
MethodParameters:
Name Flags
context
userId
public void convertToAshmem();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_1
if_icmpeq 1
aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_5
if_icmpne 4
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
invokevirtual android.graphics.Bitmap.isMutable:()Z
ifeq 4
2: aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
invokevirtual android.graphics.Bitmap.getAllocationByteCount:()I
ldc 131072
if_icmplt 4
3: aload 0
aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
invokevirtual android.graphics.Bitmap.createAshmemBitmap:()Landroid/graphics/Bitmap;
invokevirtual android.graphics.drawable.Icon.setBitmap:(Landroid/graphics/Bitmap;)V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/graphics/drawable/Icon;
public void writeToStream(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: new java.io.DataOutputStream
dup
aload 1
invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 2
start local 2 1: aload 2
iconst_1
invokevirtual java.io.DataOutputStream.writeInt:(I)V
2: aload 2
aload 0
getfield android.graphics.drawable.Icon.mType:I
invokevirtual java.io.DataOutputStream.writeByte:(I)V
3: aload 0
getfield android.graphics.drawable.Icon.mType:I
tableswitch { // 1 - 5
1: 4
2: 9
3: 6
4: 12
5: 4
default: 13
}
4: StackMap locals: java.io.DataOutputStream
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
getstatic android.graphics.Bitmap$CompressFormat.PNG:Landroid/graphics/Bitmap$CompressFormat;
bipush 100
aload 2
invokevirtual android.graphics.Bitmap.compress:(Landroid/graphics/Bitmap$CompressFormat;ILjava/io/OutputStream;)Z
pop
5: goto 13
6: StackMap locals:
StackMap stack:
aload 2
aload 0
invokevirtual android.graphics.drawable.Icon.getDataLength:()I
invokevirtual java.io.DataOutputStream.writeInt:(I)V
7: aload 2
aload 0
invokevirtual android.graphics.drawable.Icon.getDataBytes:()[B
aload 0
invokevirtual android.graphics.drawable.Icon.getDataOffset:()I
aload 0
invokevirtual android.graphics.drawable.Icon.getDataLength:()I
invokevirtual java.io.DataOutputStream.write:([BII)V
8: goto 13
9: StackMap locals:
StackMap stack:
aload 2
aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
10: aload 2
aload 0
invokevirtual android.graphics.drawable.Icon.getResId:()I
invokevirtual java.io.DataOutputStream.writeInt:(I)V
11: goto 13
12: StackMap locals:
StackMap stack:
aload 2
aload 0
invokevirtual android.graphics.drawable.Icon.getUriString:()Ljava/lang/String;
invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
13: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Landroid/graphics/drawable/Icon;
0 14 1 stream Ljava/io/OutputStream;
1 14 2 dataStream Ljava/io/DataOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
stream
private void <init>(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
getstatic android.graphics.drawable.Icon.DEFAULT_TINT_MODE:Landroid/graphics/PorterDuff$Mode;
putfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
2: aload 0
iload 1
putfield android.graphics.drawable.Icon.mType:I
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/graphics/drawable/Icon;
0 4 1 mType I
MethodParameters:
Name Flags
mType
public static android.graphics.drawable.Icon createFromStream(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=9, args_size=1
start local 0 0: new java.io.DataInputStream
dup
aload 0
invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
astore 1
start local 1 1: aload 1
invokevirtual java.io.DataInputStream.readInt:()I
istore 2
start local 2 2: iload 2
iconst_1
if_icmplt 16
3: aload 1
invokevirtual java.io.DataInputStream.readByte:()B
istore 3
start local 3 4: iload 3
tableswitch { // 1 - 5
1: 5
2: 11
3: 7
4: 14
5: 6
default: 16
}
5: StackMap locals: java.io.DataInputStream int int
StackMap stack:
aload 1
invokestatic android.graphics.BitmapFactory.decodeStream:(Ljava/io/InputStream;)Landroid/graphics/Bitmap;
invokestatic android.graphics.drawable.Icon.createWithBitmap:(Landroid/graphics/Bitmap;)Landroid/graphics/drawable/Icon;
areturn
6: StackMap locals:
StackMap stack:
aload 1
invokestatic android.graphics.BitmapFactory.decodeStream:(Ljava/io/InputStream;)Landroid/graphics/Bitmap;
invokestatic android.graphics.drawable.Icon.createWithAdaptiveBitmap:(Landroid/graphics/Bitmap;)Landroid/graphics/drawable/Icon;
areturn
7: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.DataInputStream.readInt:()I
istore 4
start local 4 8: iload 4
newarray 8
astore 5
start local 5 9: aload 1
aload 5
iconst_0
iload 4
invokevirtual java.io.DataInputStream.read:([BII)I
pop
10: aload 5
iconst_0
iload 4
invokestatic android.graphics.drawable.Icon.createWithData:([BII)Landroid/graphics/drawable/Icon;
areturn
end local 5 end local 4 11: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.DataInputStream.readUTF:()Ljava/lang/String;
astore 6
start local 6 12: aload 1
invokevirtual java.io.DataInputStream.readInt:()I
istore 7
start local 7 13: aload 6
iload 7
invokestatic android.graphics.drawable.Icon.createWithResource:(Ljava/lang/String;I)Landroid/graphics/drawable/Icon;
areturn
end local 7 end local 6 14: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.DataInputStream.readUTF:()Ljava/lang/String;
astore 8
start local 8 15: aload 8
invokestatic android.graphics.drawable.Icon.createWithContentUri:(Ljava/lang/String;)Landroid/graphics/drawable/Icon;
areturn
end local 8 end local 3 16: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 stream Ljava/io/InputStream;
1 17 1 inputStream Ljava/io/DataInputStream;
2 17 2 version I
4 16 3 type I
8 11 4 length I
9 11 5 data [B
12 14 6 packageName Ljava/lang/String;
13 14 7 resId I
15 16 8 uriOrPath Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
stream
public boolean sameAs(android.graphics.drawable.Icon);
descriptor: (Landroid/graphics/drawable/Icon;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mType:I
aload 1
invokevirtual android.graphics.drawable.Icon.getType:()I
if_icmpeq 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mType:I
tableswitch { // 1 - 5
1: 5
2: 12
3: 7
4: 16
5: 5
default: 17
}
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
aload 1
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
if_acmpne 6
iconst_1
ireturn
StackMap locals:
StackMap stack:
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getDataLength:()I
aload 1
invokevirtual android.graphics.drawable.Icon.getDataLength:()I
if_icmpne 11
8: aload 0
invokevirtual android.graphics.drawable.Icon.getDataOffset:()I
aload 1
invokevirtual android.graphics.drawable.Icon.getDataOffset:()I
if_icmpne 11
9: aload 0
invokevirtual android.graphics.drawable.Icon.getDataBytes:()[B
aload 1
invokevirtual android.graphics.drawable.Icon.getDataBytes:()[B
invokestatic java.util.Arrays.equals:([B[B)Z
ifeq 11
10: iconst_1
ireturn
StackMap locals:
StackMap stack:
11: iconst_0
ireturn
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getResId:()I
aload 1
invokevirtual android.graphics.drawable.Icon.getResId:()I
if_icmpne 15
13: aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
aload 1
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 15
14: iconst_1
ireturn
StackMap locals:
StackMap stack:
15: iconst_0
ireturn
16: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getUriString:()Ljava/lang/String;
aload 1
invokevirtual android.graphics.drawable.Icon.getUriString:()Ljava/lang/String;
invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ireturn
17: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Landroid/graphics/drawable/Icon;
0 18 1 otherIcon Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
otherIcon
public static android.graphics.drawable.Icon createWithResource(android.content.Context, int);
descriptor: (Landroid/content/Context;I)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Context must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_2
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 2
start local 2 3: aload 2
iload 1
putfield android.graphics.drawable.Icon.mInt1:I
4: aload 2
aload 0
invokevirtual android.content.Context.getPackageName:()Ljava/lang/String;
putfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
5: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 context Landroid/content/Context;
0 6 1 resId I
3 6 2 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
context
resId
public static android.graphics.drawable.Icon createWithResource(android.content.res.Resources, int);
descriptor: (Landroid/content/res/Resources;I)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Resource must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_2
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 2
start local 2 3: aload 2
iload 1
putfield android.graphics.drawable.Icon.mInt1:I
4: aload 2
aload 0
iload 1
invokevirtual android.content.res.Resources.getResourcePackageName:(I)Ljava/lang/String;
putfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
5: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 res Landroid/content/res/Resources;
0 6 1 resId I
3 6 2 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
res
resId
public static android.graphics.drawable.Icon createWithResource(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Resource package name must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_2
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 2
start local 2 3: aload 2
iload 1
putfield android.graphics.drawable.Icon.mInt1:I
4: aload 2
aload 0
putfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
5: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 resPackage Ljava/lang/String;
0 6 1 resId I
3 6 2 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
resPackage
resId
public static android.graphics.drawable.Icon createWithBitmap(android.graphics.Bitmap);
descriptor: (Landroid/graphics/Bitmap;)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Bitmap must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_1
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 1
start local 1 3: aload 1
aload 0
invokevirtual android.graphics.drawable.Icon.setBitmap:(Landroid/graphics/Bitmap;)V
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 bits Landroid/graphics/Bitmap;
3 5 1 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
bits
public static android.graphics.drawable.Icon createWithAdaptiveBitmap(android.graphics.Bitmap);
descriptor: (Landroid/graphics/Bitmap;)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Bitmap must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_5
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 1
start local 1 3: aload 1
aload 0
invokevirtual android.graphics.drawable.Icon.setBitmap:(Landroid/graphics/Bitmap;)V
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 bits Landroid/graphics/Bitmap;
3 5 1 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
bits
public static android.graphics.drawable.Icon createWithData(byte[], int, int);
descriptor: ([BII)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Data must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_3
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 3
start local 3 3: aload 3
aload 0
putfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
4: aload 3
iload 2
putfield android.graphics.drawable.Icon.mInt1:I
5: aload 3
iload 1
putfield android.graphics.drawable.Icon.mInt2:I
6: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 data [B
0 7 1 offset I
0 7 2 length I
3 7 3 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
data
offset
length
public static android.graphics.drawable.Icon createWithContentUri(java.lang.String);
descriptor: (Ljava/lang/String;)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Uri must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_4
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 1
start local 1 3: aload 1
aload 0
putfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 uri Ljava/lang/String;
3 5 1 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
uri
public static android.graphics.drawable.Icon createWithContentUri(android.net.Uri);
descriptor: (Landroid/net/Uri;)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Uri must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_4
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 1
start local 1 3: aload 1
aload 0
invokevirtual android.net.Uri.toString:()Ljava/lang/String;
putfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 uri Landroid/net/Uri;
3 5 1 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
uri
public android.graphics.drawable.Icon setTint(int);
descriptor: (I)Landroid/graphics/drawable/Icon;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokestatic android.content.res.ColorStateList.valueOf:(I)Landroid/content/res/ColorStateList;
invokevirtual android.graphics.drawable.Icon.setTintList:(Landroid/content/res/ColorStateList;)Landroid/graphics/drawable/Icon;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/graphics/drawable/Icon;
0 1 1 tint I
MethodParameters:
Name Flags
tint
public android.graphics.drawable.Icon setTintList(android.content.res.ColorStateList);
descriptor: (Landroid/content/res/ColorStateList;)Landroid/graphics/drawable/Icon;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/graphics/drawable/Icon;
0 2 1 tintList Landroid/content/res/ColorStateList;
MethodParameters:
Name Flags
tintList
public android.graphics.drawable.Icon setTintMode(android.graphics.PorterDuff$Mode);
descriptor: (Landroid/graphics/PorterDuff$Mode;)Landroid/graphics/drawable/Icon;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/graphics/drawable/Icon;
0 2 1 mode Landroid/graphics/PorterDuff$Mode;
MethodParameters:
Name Flags
mode
public boolean hasTint();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
ifnonnull 1
aload 0
getfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
getstatic android.graphics.drawable.Icon.DEFAULT_TINT_MODE:Landroid/graphics/PorterDuff$Mode;
if_acmpne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/graphics/drawable/Icon;
public static android.graphics.drawable.Icon createWithFilePath(java.lang.String);
descriptor: (Ljava/lang/String;)Landroid/graphics/drawable/Icon;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Path must not be null."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new android.graphics.drawable.Icon
dup
iconst_4
invokespecial android.graphics.drawable.Icon.<init>:(I)V
astore 1
start local 1 3: aload 1
aload 0
putfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 path Ljava/lang/String;
3 5 1 rep Landroid/graphics/drawable/Icon;
MethodParameters:
Name Flags
path
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "Icon(typ="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield android.graphics.drawable.Icon.mType:I
invokestatic android.graphics.drawable.Icon.typeToString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
astore 1
start local 1 1: aload 0
getfield android.graphics.drawable.Icon.mType:I
tableswitch { // 1 - 5
1: 2
2: 7
3: 12
4: 16
5: 2
default: 17
}
2: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 1
ldc " size="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
invokevirtual android.graphics.Bitmap.getWidth:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
4: ldc "x"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
invokevirtual android.graphics.Bitmap.getHeight:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
6: goto 17
7: StackMap locals:
StackMap stack:
aload 1
ldc " pkg="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
8: aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: ldc " id="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: ldc "0x%08x"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
invokevirtual android.graphics.drawable.Icon.getResId:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
11: goto 17
12: StackMap locals:
StackMap stack:
aload 1
ldc " len="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual android.graphics.drawable.Icon.getDataLength:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
13: aload 0
invokevirtual android.graphics.drawable.Icon.getDataOffset:()I
ifeq 17
14: aload 1
ldc " off="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual android.graphics.drawable.Icon.getDataOffset:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
15: goto 17
16: StackMap locals:
StackMap stack:
aload 1
ldc " uri="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual android.graphics.drawable.Icon.getUriString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
17: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
ifnull 26
18: aload 1
ldc " tint="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
19: ldc ""
astore 2
start local 2 20: aload 0
getfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
invokevirtual android.content.res.ColorStateList.getColors:()[I
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 25
StackMap locals: android.graphics.drawable.Icon java.lang.StringBuilder java.lang.String top int int int[]
StackMap stack:
21: aload 6
iload 4
iaload
istore 3
start local 3 22: aload 1
ldc "%s0x%08x"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
dup
iconst_1
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
23: ldc "|"
astore 2
end local 3 24: iinc 4 1
StackMap locals:
StackMap stack:
25: iload 4
iload 5
if_icmplt 21
end local 2 26: StackMap locals: android.graphics.drawable.Icon java.lang.StringBuilder
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
getstatic android.graphics.drawable.Icon.DEFAULT_TINT_MODE:Landroid/graphics/PorterDuff$Mode;
if_acmpeq 27
aload 1
ldc " mode="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
27: StackMap locals:
StackMap stack:
aload 1
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
28: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Landroid/graphics/drawable/Icon;
1 29 1 sb Ljava/lang/StringBuilder;
20 26 2 sep Ljava/lang/String;
22 24 3 c I
public int describeContents();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_1
if_icmpeq 1
aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_5
if_icmpeq 1
aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_3
if_icmpne 2
1: StackMap locals:
StackMap stack:
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
3: StackMap locals:
StackMap stack: int
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/graphics/drawable/Icon;
private void <init>(android.os.Parcel);
descriptor: (Landroid/os/Parcel;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual android.os.Parcel.readInt:()I
invokespecial android.graphics.drawable.Icon.<init>:(I)V
1: aload 0
getfield android.graphics.drawable.Icon.mType:I
tableswitch { // 1 - 5
1: 2
2: 5
3: 10
4: 19
5: 2
default: 22
}
2: StackMap locals: android.graphics.drawable.Icon android.os.Parcel
StackMap stack:
getstatic android.graphics.Bitmap.CREATOR:Landroid/os/Parcelable$Creator;
aload 1
invokeinterface android.os.Parcelable$Creator.createFromParcel:(Landroid/os/Parcel;)Ljava/lang/Object;
checkcast android.graphics.Bitmap
astore 2
start local 2 3: aload 0
aload 2
putfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
4: goto 25
end local 2 5: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.os.Parcel.readString:()Ljava/lang/String;
astore 3
start local 3 6: aload 1
invokevirtual android.os.Parcel.readInt:()I
istore 4
start local 4 7: aload 0
aload 3
putfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
8: aload 0
iload 4
putfield android.graphics.drawable.Icon.mInt1:I
9: goto 25
end local 4 end local 3 10: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.os.Parcel.readInt:()I
istore 5
start local 5 11: aload 1
invokevirtual android.os.Parcel.readBlob:()[B
astore 6
start local 6 12: iload 5
aload 6
arraylength
if_icmpeq 16
13: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "internal unparceling error: blob length ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
14: aload 6
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") != expected length ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
15: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals: android.graphics.drawable.Icon android.os.Parcel top top top int byte[]
StackMap stack:
aload 0
iload 5
putfield android.graphics.drawable.Icon.mInt1:I
17: aload 0
aload 6
putfield android.graphics.drawable.Icon.mObj1:Ljava/lang/Object;
18: goto 25
end local 6 end local 5 19: StackMap locals: android.graphics.drawable.Icon android.os.Parcel
StackMap stack:
aload 1
invokevirtual android.os.Parcel.readString:()Ljava/lang/String;
astore 7
start local 7 20: aload 0
aload 7
putfield android.graphics.drawable.Icon.mString1:Ljava/lang/String;
21: goto 25
end local 7 22: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "invalid "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " type in parcel: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield android.graphics.drawable.Icon.mType:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
24: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.os.Parcel.readInt:()I
iconst_1
if_icmpne 27
26: aload 0
getstatic android.content.res.ColorStateList.CREATOR:Landroid/os/Parcelable$Creator;
aload 1
invokeinterface android.os.Parcelable$Creator.createFromParcel:(Landroid/os/Parcel;)Ljava/lang/Object;
checkcast android.content.res.ColorStateList
putfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
27: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual android.os.Parcel.readInt:()I
invokestatic android.graphics.PorterDuff.intToMode:(I)Landroid/graphics/PorterDuff$Mode;
putfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
28: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Landroid/graphics/drawable/Icon;
0 29 1 in Landroid/os/Parcel;
3 5 2 bits Landroid/graphics/Bitmap;
6 10 3 pkg Ljava/lang/String;
7 10 4 resId I
11 19 5 len I
12 19 6 a [B
20 22 7 uri Ljava/lang/String;
MethodParameters:
Name Flags
in
public void writeToParcel(android.os.Parcel, int);
descriptor: (Landroid/os/Parcel;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
getfield android.graphics.drawable.Icon.mType:I
invokevirtual android.os.Parcel.writeInt:(I)V
1: aload 0
getfield android.graphics.drawable.Icon.mType:I
tableswitch { // 1 - 5
1: 2
2: 5
3: 8
4: 11
5: 2
default: 12
}
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
pop
3: aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
aload 1
iload 2
invokevirtual android.graphics.Bitmap.writeToParcel:(Landroid/os/Parcel;I)V
4: goto 12
5: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual android.graphics.drawable.Icon.getResPackage:()Ljava/lang/String;
invokevirtual android.os.Parcel.writeString:(Ljava/lang/String;)V
6: aload 1
aload 0
invokevirtual android.graphics.drawable.Icon.getResId:()I
invokevirtual android.os.Parcel.writeInt:(I)V
7: goto 12
8: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual android.graphics.drawable.Icon.getDataLength:()I
invokevirtual android.os.Parcel.writeInt:(I)V
9: aload 1
aload 0
invokevirtual android.graphics.drawable.Icon.getDataBytes:()[B
aload 0
invokevirtual android.graphics.drawable.Icon.getDataOffset:()I
aload 0
invokevirtual android.graphics.drawable.Icon.getDataLength:()I
invokevirtual android.os.Parcel.writeBlob:([BII)V
10: goto 12
11: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual android.graphics.drawable.Icon.getUriString:()Ljava/lang/String;
invokevirtual android.os.Parcel.writeString:(Ljava/lang/String;)V
12: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
ifnonnull 15
13: aload 1
iconst_0
invokevirtual android.os.Parcel.writeInt:(I)V
14: goto 17
15: StackMap locals:
StackMap stack:
aload 1
iconst_1
invokevirtual android.os.Parcel.writeInt:(I)V
16: aload 0
getfield android.graphics.drawable.Icon.mTintList:Landroid/content/res/ColorStateList;
aload 1
iload 2
invokevirtual android.content.res.ColorStateList.writeToParcel:(Landroid/os/Parcel;I)V
17: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield android.graphics.drawable.Icon.mTintMode:Landroid/graphics/PorterDuff$Mode;
invokestatic android.graphics.PorterDuff.modeToInt:(Landroid/graphics/PorterDuff$Mode;)I
invokevirtual android.os.Parcel.writeInt:(I)V
18: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Landroid/graphics/drawable/Icon;
0 19 1 dest Landroid/os/Parcel;
0 19 2 flags I
MethodParameters:
Name Flags
dest
flags
public static android.graphics.Bitmap scaleDownIfNecessary(android.graphics.Bitmap, int, int);
descriptor: (Landroid/graphics/Bitmap;II)Landroid/graphics/Bitmap;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual android.graphics.Bitmap.getWidth:()I
istore 3
start local 3 1: aload 0
invokevirtual android.graphics.Bitmap.getHeight:()I
istore 4
start local 4 2: iload 3
iload 1
if_icmpgt 3
iload 4
iload 2
if_icmple 11
3: StackMap locals: int int
StackMap stack:
iload 1
i2f
iload 3
i2f
fdiv
4: iload 2
i2f
iload 4
i2f
fdiv
5: invokestatic java.lang.Math.min:(FF)F
fstore 5
start local 5 6: aload 0
7: iconst_1
fload 5
iload 3
i2f
fmul
f2i
invokestatic java.lang.Math.max:(II)I
8: iconst_1
fload 5
iload 4
i2f
fmul
f2i
invokestatic java.lang.Math.max:(II)I
9: iconst_1
10: invokestatic android.graphics.Bitmap.createScaledBitmap:(Landroid/graphics/Bitmap;IIZ)Landroid/graphics/Bitmap;
astore 0
end local 5 11: StackMap locals:
StackMap stack:
aload 0
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 bitmap Landroid/graphics/Bitmap;
0 12 1 maxWidth I
0 12 2 maxHeight I
1 12 3 bitmapWidth I
2 12 4 bitmapHeight I
6 11 5 scale F
MethodParameters:
Name Flags
bitmap
maxWidth
maxHeight
public void scaleDownIfNecessary(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_1
if_icmpeq 2
aload 0
getfield android.graphics.drawable.Icon.mType:I
iconst_5
if_icmpeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.graphics.drawable.Icon.getBitmap:()Landroid/graphics/Bitmap;
astore 3
start local 3 3: aload 0
aload 3
iload 1
iload 2
invokestatic android.graphics.drawable.Icon.scaleDownIfNecessary:(Landroid/graphics/Bitmap;II)Landroid/graphics/Bitmap;
invokevirtual android.graphics.drawable.Icon.setBitmap:(Landroid/graphics/Bitmap;)V
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/graphics/drawable/Icon;
0 5 1 maxWidth I
0 5 2 maxHeight I
3 5 3 bitmap Landroid/graphics/Bitmap;
MethodParameters:
Name Flags
maxWidth
maxHeight
}
SourceFile: "Icon.java"
NestMembers:
android.graphics.drawable.Icon$1 android.graphics.drawable.Icon$IconType android.graphics.drawable.Icon$LoadDrawableTask android.graphics.drawable.Icon$LoadDrawableTask$1 android.graphics.drawable.Icon$OnDrawableLoadedListener
InnerClasses:
public NameNotFoundException = android.content.pm.PackageManager$NameNotFoundException of android.content.pm.PackageManager
public final Theme = android.content.res.Resources$Theme of android.content.res.Resources
public final CompressFormat = android.graphics.Bitmap$CompressFormat of android.graphics.Bitmap
public final Mode = android.graphics.PorterDuff$Mode of android.graphics.PorterDuff
android.graphics.drawable.Icon$1
public abstract IconType = android.graphics.drawable.Icon$IconType of android.graphics.drawable.Icon
private LoadDrawableTask = android.graphics.drawable.Icon$LoadDrawableTask of android.graphics.drawable.Icon
public abstract OnDrawableLoadedListener = android.graphics.drawable.Icon$OnDrawableLoadedListener of android.graphics.drawable.Icon
public abstract Creator = android.os.Parcelable$Creator of android.os.Parcelable