public abstract class android.app.backup.BackupAgent extends android.content.ContextWrapper
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: android.app.backup.BackupAgent
super_class: android.content.ContextWrapper
{
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "BackupAgent"
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int TYPE_EOF;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int TYPE_FILE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int TYPE_DIRECTORY;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int TYPE_SYMLINK;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int FLAG_CLIENT_SIDE_ENCRYPTION_ENABLED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int FLAG_DEVICE_TO_DEVICE_TRANSFER;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int FLAG_FAKE_CLIENT_SIDE_ENCRYPTION_ENABLED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -2147483648
android.os.Handler mHandler;
descriptor: Landroid/os/Handler;
flags: (0x0000)
private final android.os.IBinder mBinder;
descriptor: Landroid/os/IBinder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
android.os.Handler getHandler();
descriptor: ()Landroid/os/Handler;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield android.app.backup.BackupAgent.mHandler:Landroid/os/Handler;
ifnonnull 2
1: aload 0
new android.os.Handler
dup
invokestatic android.os.Looper.getMainLooper:()Landroid/os/Looper;
invokespecial android.os.Handler.<init>:(Landroid/os/Looper;)V
putfield android.app.backup.BackupAgent.mHandler:Landroid/os/Handler;
2: StackMap locals:
StackMap stack:
aload 0
getfield android.app.backup.BackupAgent.mHandler:Landroid/os/Handler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/app/backup/BackupAgent;
private void waitForSharedPrefs();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual android.app.backup.BackupAgent.getHandler:()Landroid/os/Handler;
astore 1
start local 1 1: new android.app.backup.BackupAgent$SharedPrefsSynchronizer
dup
aload 0
invokespecial android.app.backup.BackupAgent$SharedPrefsSynchronizer.<init>:(Landroid/app/backup/BackupAgent;)V
astore 2
start local 2 2: aload 1
aload 2
invokevirtual android.os.Handler.postAtFrontOfQueue:(Ljava/lang/Runnable;)Z
pop
3: aload 2
getfield android.app.backup.BackupAgent$SharedPrefsSynchronizer.mLatch:Ljava/util/concurrent/CountDownLatch;
invokevirtual java.util.concurrent.CountDownLatch.await:()V
4: goto 6
StackMap locals: android.app.backup.BackupAgent android.os.Handler android.app.backup.BackupAgent$SharedPrefsSynchronizer
StackMap stack: java.lang.InterruptedException
5: pop
6: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/app/backup/BackupAgent;
1 7 1 h Landroid/os/Handler;
2 7 2 s Landroid/app/backup/BackupAgent$SharedPrefsSynchronizer;
Exception table:
from to target type
3 4 5 Class java.lang.InterruptedException
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokespecial android.content.ContextWrapper.<init>:(Landroid/content/Context;)V
1: aload 0
aconst_null
putfield android.app.backup.BackupAgent.mHandler:Landroid/os/Handler;
2: aload 0
new android.app.backup.BackupAgent$BackupServiceBinder
dup
aload 0
invokespecial android.app.backup.BackupAgent$BackupServiceBinder.<init>:(Landroid/app/backup/BackupAgent;)V
invokevirtual android.app.backup.BackupAgent$BackupServiceBinder.asBinder:()Landroid/os/IBinder;
putfield android.app.backup.BackupAgent.mBinder:Landroid/os/IBinder;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/app/backup/BackupAgent;
public void onCreate();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/app/backup/BackupAgent;
public void onDestroy();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/app/backup/BackupAgent;
public abstract void onBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor);
descriptor: (Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupDataOutput;Landroid/os/ParcelFileDescriptor;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
oldState
data
newState
public abstract void onRestore(android.app.backup.BackupDataInput, int, android.os.ParcelFileDescriptor);
descriptor: (Landroid/app/backup/BackupDataInput;ILandroid/os/ParcelFileDescriptor;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
data
appVersionCode
newState
public void onRestore(android.app.backup.BackupDataInput, long, android.os.ParcelFileDescriptor);
descriptor: (Landroid/app/backup/BackupDataInput;JLandroid/os/ParcelFileDescriptor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
aload 1
lload 2
l2i
aload 4
invokevirtual android.app.backup.BackupAgent.onRestore:(Landroid/app/backup/BackupDataInput;ILandroid/os/ParcelFileDescriptor;)V
1: return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/app/backup/BackupAgent;
0 2 1 data Landroid/app/backup/BackupDataInput;
0 2 2 appVersionCode J
0 2 4 newState Landroid/os/ParcelFileDescriptor;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
data
appVersionCode
newState
public void onFullBackup(android.app.backup.FullBackupDataOutput);
descriptor: (Landroid/app/backup/FullBackupDataOutput;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tThe method maybeParseAndGetCanonicalIncludePaths() from the type FullBackup.BackupScheme refers to the missing type XmlPullParserException\n\tThe method maybeParseAndGetCanonicalExcludePaths() from the type FullBackup.BackupScheme refers to the missing type XmlPullParserException\n\tNo exception of type Object can be thrown; an exception type must be a subclass of Throwable\n\tXmlPullParserException cannot be resolved to a type\n\tThe method v(String, String, Throwable) in the type Log is not applicable for the arguments (String, String, Object)\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/app/backup/BackupAgent;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
data
public void onQuotaExceeded(long, long);
descriptor: (JJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=5, args_size=3
start local 0 start local 1 start local 3 0: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/app/backup/BackupAgent;
0 1 1 backupDataBytes J
0 1 3 quotaBytes J
MethodParameters:
Name Flags
backupDataBytes
quotaBytes
private void applyXmlFiltersAndDoFullBackupForDomain(java.lang.String, java.lang.String, java.util.Map<java.lang.String, java.util.Set<android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags>>, android.util.ArraySet<android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags>, android.util.ArraySet<java.lang.String>, android.app.backup.FullBackupDataOutput);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;Landroid/util/ArraySet;Landroid/util/ArraySet;Landroid/app/backup/FullBackupDataOutput;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=9, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 3
ifnull 1
aload 3
invokeinterface java.util.Map.size:()I
ifne 6
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
2: aload 0
invokestatic android.app.backup.FullBackup.getBackupScheme:(Landroid/content/Context;)Landroid/app/backup/FullBackup$BackupScheme;
aload 2
invokevirtual android.app.backup.FullBackup$BackupScheme.tokenToDirectoryPath:(Ljava/lang/String;)Ljava/lang/String;
3: aload 4
aload 5
aload 6
4: invokevirtual android.app.backup.BackupAgent.fullBackupFileTree:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/util/ArraySet;Landroid/util/ArraySet;Landroid/app/backup/FullBackupDataOutput;)V
5: goto 17
StackMap locals:
StackMap stack:
6: aload 3
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 17
7: aload 3
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
goto 16
StackMap locals: android.app.backup.BackupAgent java.lang.String java.lang.String java.util.Map android.util.ArraySet android.util.ArraySet android.app.backup.FullBackupDataOutput top java.util.Iterator
StackMap stack:
8: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags
astore 7
start local 7 9: aload 0
aload 7
invokevirtual android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags.getRequiredFlags:()I
10: aload 6
invokevirtual android.app.backup.FullBackupDataOutput.getTransportFlags:()I
11: invokevirtual android.app.backup.BackupAgent.areIncludeRequiredTransportFlagsSatisfied:(II)Z
12: ifeq 16
13: aload 0
aload 1
aload 2
aload 7
invokevirtual android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags.getPath:()Ljava/lang/String;
aload 4
14: aload 5
aload 6
15: invokevirtual android.app.backup.BackupAgent.fullBackupFileTree:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/util/ArraySet;Landroid/util/ArraySet;Landroid/app/backup/FullBackupDataOutput;)V
end local 7 16: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
17: StackMap locals: android.app.backup.BackupAgent java.lang.String java.lang.String java.util.Map android.util.ArraySet android.util.ArraySet android.app.backup.FullBackupDataOutput
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Landroid/app/backup/BackupAgent;
0 18 1 packageName Ljava/lang/String;
0 18 2 domainToken Ljava/lang/String;
0 18 3 includeMap Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;>;
0 18 4 filterSet Landroid/util/ArraySet<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;
0 18 5 traversalExcludeSet Landroid/util/ArraySet<Ljava/lang/String;>;
0 18 6 data Landroid/app/backup/FullBackupDataOutput;
9 16 7 includeFile Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;
Exceptions:
throws java.io.IOException
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;>;Landroid/util/ArraySet<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;Landroid/util/ArraySet<Ljava/lang/String;>;Landroid/app/backup/FullBackupDataOutput;)V
MethodParameters:
Name Flags
packageName
domainToken
includeMap
filterSet
traversalExcludeSet
data
private boolean areIncludeRequiredTransportFlagsSatisfied(int, int);
descriptor: (II)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
iload 1
iand
iload 1
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/app/backup/BackupAgent;
0 2 1 includeFlags I
0 2 2 transportFlags I
MethodParameters:
Name Flags
includeFlags
transportFlags
public final void fullBackupFile(java.io.File, android.app.backup.FullBackupDataOutput);
descriptor: (Ljava/io/File;Landroid/app/backup/FullBackupDataOutput;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=24, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 18
start local 18 1: aload 0
invokevirtual android.app.backup.BackupAgent.getApplicationInfo:()Landroid/content/pm/ApplicationInfo;
astore 20
start local 20 2: aload 0
invokevirtual android.app.backup.BackupAgent.createCredentialProtectedStorageContext:()Landroid/content/Context;
astore 21
start local 21 3: aload 21
invokevirtual android.content.Context.getDataDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 3
start local 3 4: aload 21
invokevirtual android.content.Context.getFilesDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 4
start local 4 5: aload 21
invokevirtual android.content.Context.getNoBackupFilesDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 5
start local 5 6: aload 21
ldc "foo"
invokevirtual android.content.Context.getDatabasePath:(Ljava/lang/String;)Ljava/io/File;
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 6
start local 6 7: aload 21
ldc "foo"
invokevirtual android.content.Context.getSharedPreferencesPath:(Ljava/lang/String;)Ljava/io/File;
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 7
start local 7 8: aload 21
invokevirtual android.content.Context.getCacheDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 8
start local 8 9: aload 21
invokevirtual android.content.Context.getCodeCacheDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 9
start local 9 10: aload 0
invokevirtual android.app.backup.BackupAgent.createDeviceProtectedStorageContext:()Landroid/content/Context;
astore 22
start local 22 11: aload 22
invokevirtual android.content.Context.getDataDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 10
start local 10 12: aload 22
invokevirtual android.content.Context.getFilesDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 11
start local 11 13: aload 22
invokevirtual android.content.Context.getNoBackupFilesDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 12
start local 12 14: aload 22
ldc "foo"
invokevirtual android.content.Context.getDatabasePath:(Ljava/lang/String;)Ljava/io/File;
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 13
start local 13 15: aload 22
ldc "foo"
invokevirtual android.content.Context.getSharedPreferencesPath:(Ljava/lang/String;)Ljava/io/File;
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
16: invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
17: astore 14
start local 14 18: aload 22
invokevirtual android.content.Context.getCacheDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 15
start local 15 19: aload 22
invokevirtual android.content.Context.getCodeCacheDir:()Ljava/io/File;
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 16
start local 16 20: aload 20
getfield android.content.pm.ApplicationInfo.nativeLibraryDir:Ljava/lang/String;
ifnonnull 22
21: aconst_null
goto 23
22: StackMap locals: android.app.backup.BackupAgent java.io.File android.app.backup.FullBackupDataOutput java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String top java.lang.String top android.content.pm.ApplicationInfo android.content.Context android.content.Context
StackMap stack:
new java.io.File
dup
aload 20
getfield android.content.pm.ApplicationInfo.nativeLibraryDir:Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
23: StackMap locals:
StackMap stack: java.lang.String
astore 17
start local 17 24: invokestatic android.os.Process.myUid:()I
sipush 1000
if_icmpeq 28
25: aload 0
aconst_null
invokevirtual android.app.backup.BackupAgent.getExternalFilesDir:(Ljava/lang/String;)Ljava/io/File;
astore 23
start local 23 26: aload 23
ifnull 28
27: aload 23
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 18
end local 23 28: StackMap locals: android.app.backup.BackupAgent java.io.File android.app.backup.FullBackupDataOutput java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String top android.content.pm.ApplicationInfo android.content.Context android.content.Context
StackMap stack:
aload 1
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 19
end local 22 end local 21 start local 19 29: goto 33
end local 19 end local 17 end local 16 end local 15 end local 14 end local 13 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 3 StackMap locals: android.app.backup.BackupAgent java.io.File android.app.backup.FullBackupDataOutput top top top top top top top top top top top top top top top java.lang.String top android.content.pm.ApplicationInfo
StackMap stack: java.io.IOException
30: pop
31: ldc "BackupAgent"
ldc "Unable to obtain canonical paths"
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
32: return
start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 start local 11 start local 12 start local 13 start local 14 start local 15 start local 16 start local 17 start local 19 33: StackMap locals: android.app.backup.BackupAgent java.io.File android.app.backup.FullBackupDataOutput java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String android.content.pm.ApplicationInfo
StackMap stack:
aload 19
aload 8
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 40
34: aload 19
aload 9
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 40
35: aload 19
aload 5
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 40
36: aload 19
aload 15
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 40
37: aload 19
aload 16
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 40
38: aload 19
aload 12
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 40
39: aload 19
aload 17
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 42
40: StackMap locals:
StackMap stack:
ldc "BackupAgent"
ldc "lib, cache, code_cache, and no_backup files are not backed up"
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
41: return
42: StackMap locals:
StackMap stack:
aconst_null
astore 22
start local 22 43: aload 19
aload 6
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 47
44: ldc "db"
astore 21
start local 21 45: aload 6
astore 22
46: goto 81
end local 21 StackMap locals: android.app.backup.BackupAgent java.io.File android.app.backup.FullBackupDataOutput java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String android.content.pm.ApplicationInfo top java.lang.String
StackMap stack:
47: aload 19
aload 7
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 51
48: ldc "sp"
astore 21
start local 21 49: aload 7
astore 22
50: goto 81
end local 21 StackMap locals:
StackMap stack:
51: aload 19
aload 4
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 55
52: ldc "f"
astore 21
start local 21 53: aload 4
astore 22
54: goto 81
end local 21 StackMap locals:
StackMap stack:
55: aload 19
aload 3
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 59
56: ldc "r"
astore 21
start local 21 57: aload 3
astore 22
58: goto 81
end local 21 StackMap locals:
StackMap stack:
59: aload 19
aload 13
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 63
60: ldc "d_db"
astore 21
start local 21 61: aload 13
astore 22
62: goto 81
end local 21 StackMap locals:
StackMap stack:
63: aload 19
aload 14
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 67
64: ldc "d_sp"
astore 21
start local 21 65: aload 14
astore 22
66: goto 81
end local 21 StackMap locals:
StackMap stack:
67: aload 19
aload 11
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 71
68: ldc "d_f"
astore 21
start local 21 69: aload 11
astore 22
70: goto 81
end local 21 StackMap locals:
StackMap stack:
71: aload 19
aload 10
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 75
72: ldc "d_r"
astore 21
start local 21 73: aload 10
astore 22
74: goto 81
end local 21 StackMap locals:
StackMap stack:
75: aload 18
ifnull 79
aload 19
aload 18
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 79
76: ldc "ef"
astore 21
start local 21 77: aload 18
astore 22
78: goto 81
end local 21 79: StackMap locals:
StackMap stack:
ldc "BackupAgent"
new java.lang.StringBuilder
dup
ldc "File "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 19
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is in an unsupported location; skipping"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
80: return
start local 21 81: StackMap locals: android.app.backup.BackupAgent java.io.File android.app.backup.FullBackupDataOutput java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String android.content.pm.ApplicationInfo java.lang.String java.lang.String
StackMap stack:
aload 0
invokevirtual android.app.backup.BackupAgent.getPackageName:()Ljava/lang/String;
aload 21
aconst_null
aload 22
aload 19
aload 2
invokestatic android.app.backup.FullBackup.backupToTar:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/app/backup/FullBackupDataOutput;)I
pop
82: return
end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 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 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 83 0 this Landroid/app/backup/BackupAgent;
0 83 1 file Ljava/io/File;
0 83 2 output Landroid/app/backup/FullBackupDataOutput;
4 30 3 rootDir Ljava/lang/String;
33 83 3 rootDir Ljava/lang/String;
5 30 4 filesDir Ljava/lang/String;
33 83 4 filesDir Ljava/lang/String;
6 30 5 nbFilesDir Ljava/lang/String;
33 83 5 nbFilesDir Ljava/lang/String;
7 30 6 dbDir Ljava/lang/String;
33 83 6 dbDir Ljava/lang/String;
8 30 7 spDir Ljava/lang/String;
33 83 7 spDir Ljava/lang/String;
9 30 8 cacheDir Ljava/lang/String;
33 83 8 cacheDir Ljava/lang/String;
10 30 9 codeCacheDir Ljava/lang/String;
33 83 9 codeCacheDir Ljava/lang/String;
12 30 10 deviceRootDir Ljava/lang/String;
33 83 10 deviceRootDir Ljava/lang/String;
13 30 11 deviceFilesDir Ljava/lang/String;
33 83 11 deviceFilesDir Ljava/lang/String;
14 30 12 deviceNbFilesDir Ljava/lang/String;
33 83 12 deviceNbFilesDir Ljava/lang/String;
15 30 13 deviceDbDir Ljava/lang/String;
33 83 13 deviceDbDir Ljava/lang/String;
18 30 14 deviceSpDir Ljava/lang/String;
33 83 14 deviceSpDir Ljava/lang/String;
19 30 15 deviceCacheDir Ljava/lang/String;
33 83 15 deviceCacheDir Ljava/lang/String;
20 30 16 deviceCodeCacheDir Ljava/lang/String;
33 83 16 deviceCodeCacheDir Ljava/lang/String;
24 30 17 libDir Ljava/lang/String;
33 83 17 libDir Ljava/lang/String;
1 83 18 efDir Ljava/lang/String;
29 30 19 filePath Ljava/lang/String;
33 83 19 filePath Ljava/lang/String;
2 83 20 appInfo Landroid/content/pm/ApplicationInfo;
3 29 21 ceContext Landroid/content/Context;
11 29 22 deContext Landroid/content/Context;
26 28 23 efLocation Ljava/io/File;
45 47 21 domain Ljava/lang/String;
49 51 21 domain Ljava/lang/String;
53 55 21 domain Ljava/lang/String;
57 59 21 domain Ljava/lang/String;
61 63 21 domain Ljava/lang/String;
65 67 21 domain Ljava/lang/String;
69 71 21 domain Ljava/lang/String;
73 75 21 domain Ljava/lang/String;
77 79 21 domain Ljava/lang/String;
81 83 21 domain Ljava/lang/String;
43 83 22 rootpath Ljava/lang/String;
Exception table:
from to target type
2 29 30 Class java.io.IOException
MethodParameters:
Name Flags
file
output
protected final void fullBackupFileTree(java.lang.String, java.lang.String, java.lang.String, android.util.ArraySet<android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags>, android.util.ArraySet<java.lang.String>, android.app.backup.FullBackupDataOutput);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/util/ArraySet;Landroid/util/ArraySet;Landroid/app/backup/FullBackupDataOutput;)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=7, args_size=7
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tStructStat cannot be resolved to a type\n\tOs cannot be resolved\n\tOsConstants cannot be resolved\n\tOsConstants cannot be resolved\n\tOsConstants cannot be resolved\n\tErrnoException cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/app/backup/BackupAgent;
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/util/ArraySet<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;Landroid/util/ArraySet<Ljava/lang/String;>;Landroid/app/backup/FullBackupDataOutput;)V
MethodParameters:
Name Flags
packageName
domain
startingPath
manifestExcludes
systemExcludes
output
private boolean manifestExcludesContainFilePath(android.util.ArraySet<android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags>, java.lang.String);
descriptor: (Landroid/util/ArraySet;Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual android.util.ArraySet.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: android.app.backup.BackupAgent android.util.ArraySet java.lang.String top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags
astore 3
start local 3 2: aload 3
invokevirtual android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags.getPath:()Ljava/lang/String;
astore 5
start local 5 3: aload 5
ifnull 5
aload 5
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: iconst_1
ireturn
end local 5 end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
6: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/app/backup/BackupAgent;
0 7 1 manifestExcludes Landroid/util/ArraySet<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;
0 7 2 filePath Ljava/lang/String;
2 5 3 exclude Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;
3 5 5 excludePath Ljava/lang/String;
Signature: (Landroid/util/ArraySet<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;Ljava/lang/String;)Z
MethodParameters:
Name Flags
manifestExcludes
filePath
public void onRestoreFile(android.os.ParcelFileDescriptor, long, java.io.File, int, long, long);
descriptor: (Landroid/os/ParcelFileDescriptor;JLjava/io/File;IJJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=11, args_size=7
start local 0 start local 1 start local 2 start local 4 start local 5 start local 6 start local 8 0: aload 0
aload 4
invokevirtual android.app.backup.BackupAgent.isFileEligibleForRestore:(Ljava/io/File;)Z
istore 10
start local 10 1: aload 1
lload 2
iload 5
lload 6
lload 8
iload 10
ifeq 2
aload 4
goto 3
StackMap locals: android.app.backup.BackupAgent android.os.ParcelFileDescriptor long java.io.File int long long int
StackMap stack: android.os.ParcelFileDescriptor long int long long
2: aconst_null
StackMap locals: android.app.backup.BackupAgent android.os.ParcelFileDescriptor long java.io.File int long long int
StackMap stack: android.os.ParcelFileDescriptor long int long long java.io.File
3: invokestatic android.app.backup.FullBackup.restoreFile:(Landroid/os/ParcelFileDescriptor;JIJJLjava/io/File;)V
4: return
end local 10 end local 8 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 5 0 this Landroid/app/backup/BackupAgent;
0 5 1 data Landroid/os/ParcelFileDescriptor;
0 5 2 size J
0 5 4 destination Ljava/io/File;
0 5 5 type I
0 5 6 mode J
0 5 8 mtime J
1 5 10 accept Z
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
data
size
destination
type
mode
mtime
private boolean isFileEligibleForRestore(java.io.File);
descriptor: (Ljava/io/File;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tThe method maybeParseAndGetCanonicalIncludePaths() from the type FullBackup.BackupScheme refers to the missing type XmlPullParserException\n\tThe method maybeParseAndGetCanonicalExcludePaths() from the type FullBackup.BackupScheme refers to the missing type XmlPullParserException\n\tXmlPullParserException cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/app/backup/BackupAgent;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
destination
private boolean isFileSpecifiedInPathList(java.io.File, java.util.Collection<android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags>);
descriptor: (Ljava/io/File;Ljava/util/Collection;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 10
StackMap locals: android.app.backup.BackupAgent java.io.File java.util.Collection top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags
astore 3
start local 3 2: aload 3
invokevirtual android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags.getPath:()Ljava/lang/String;
astore 5
start local 5 3: new java.io.File
dup
aload 5
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 6
start local 6 4: aload 6
invokevirtual java.io.File.isDirectory:()Z
ifeq 8
5: aload 1
invokevirtual java.io.File.isDirectory:()Z
ifeq 7
6: aload 1
aload 6
invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
ireturn
7: StackMap locals: android.app.backup.BackupAgent java.io.File java.util.Collection android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags java.util.Iterator java.lang.String java.io.File
StackMap stack:
aload 1
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
aload 5
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ireturn
8: StackMap locals:
StackMap stack:
aload 1
aload 6
invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
ifeq 10
9: iconst_1
ireturn
end local 6 end local 5 end local 3 10: StackMap locals: android.app.backup.BackupAgent java.io.File java.util.Collection top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
11: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Landroid/app/backup/BackupAgent;
0 12 1 file Ljava/io/File;
0 12 2 canonicalPathList Ljava/util/Collection<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;
2 10 3 canonical Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;
3 10 5 canonicalPath Ljava/lang/String;
4 10 6 fileFromList Ljava/io/File;
Exceptions:
throws java.io.IOException
Signature: (Ljava/io/File;Ljava/util/Collection<Landroid/app/backup/FullBackup$BackupScheme$PathWithRequiredFlags;>;)Z
MethodParameters:
Name Flags
file
canonicalPathList
protected void onRestoreFile(android.os.ParcelFileDescriptor, long, int, java.lang.String, java.lang.String, long, long);
descriptor: (Landroid/os/ParcelFileDescriptor;JILjava/lang/String;Ljava/lang/String;JJ)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=10, locals=14, args_size=8
start local 0 start local 1 start local 2 start local 4 start local 5 start local 6 start local 7 start local 9 0: aconst_null
astore 11
start local 11 1: aload 0
invokestatic android.app.backup.FullBackup.getBackupScheme:(Landroid/content/Context;)Landroid/app/backup/FullBackup$BackupScheme;
aload 5
invokevirtual android.app.backup.FullBackup$BackupScheme.tokenToDirectoryPath:(Ljava/lang/String;)Ljava/lang/String;
astore 11
2: aload 5
ldc "ef"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: ldc -1
lstore 7
4: StackMap locals: java.lang.String
StackMap stack:
aload 11
ifnull 10
5: new java.io.File
dup
aload 11
aload 6
invokespecial java.io.File.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 12
start local 12 6: aload 12
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 13
start local 13 7: aload 13
new java.lang.StringBuilder
dup
aload 11
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic java.io.File.separatorChar:C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 10
8: aload 0
aload 1
lload 2
aload 12
iload 4
lload 7
lload 9
invokevirtual android.app.backup.BackupAgent.onRestoreFile:(Landroid/os/ParcelFileDescriptor;JLjava/io/File;IJJ)V
9: return
end local 13 end local 12 10: StackMap locals:
StackMap stack:
aload 1
lload 2
iload 4
lload 7
lload 9
aconst_null
invokestatic android.app.backup.FullBackup.restoreFile:(Landroid/os/ParcelFileDescriptor;JIJJLjava/io/File;)V
11: return
end local 11 end local 9 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 12 0 this Landroid/app/backup/BackupAgent;
0 12 1 data Landroid/os/ParcelFileDescriptor;
0 12 2 size J
0 12 4 type I
0 12 5 domain Ljava/lang/String;
0 12 6 path Ljava/lang/String;
0 12 7 mode J
0 12 9 mtime J
1 12 11 basePath Ljava/lang/String;
6 10 12 outFile Ljava/io/File;
7 10 13 outPath Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
data
size
type
domain
path
mode
mtime
public void onRestoreFinished();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/app/backup/BackupAgent;
public final android.os.IBinder onBind();
descriptor: ()Landroid/os/IBinder;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.app.backup.BackupAgent.mBinder:Landroid/os/IBinder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/app/backup/BackupAgent;
public void attach(android.content.Context);
descriptor: (Landroid/content/Context;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual android.app.backup.BackupAgent.attachBaseContext:(Landroid/content/Context;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/app/backup/BackupAgent;
0 2 1 context Landroid/content/Context;
MethodParameters:
Name Flags
context
}
SourceFile: "BackupAgent.java"
NestMembers:
android.app.backup.BackupAgent$BackupServiceBinder android.app.backup.BackupAgent$FailRunnable android.app.backup.BackupAgent$SharedPrefsSynchronizer
InnerClasses:
private BackupServiceBinder = android.app.backup.BackupAgent$BackupServiceBinder of android.app.backup.BackupAgent
FailRunnable = android.app.backup.BackupAgent$FailRunnable of android.app.backup.BackupAgent
SharedPrefsSynchronizer = android.app.backup.BackupAgent$SharedPrefsSynchronizer of android.app.backup.BackupAgent
public BackupScheme = android.app.backup.FullBackup$BackupScheme of android.app.backup.FullBackup
public PathWithRequiredFlags = android.app.backup.FullBackup$BackupScheme$PathWithRequiredFlags of android.app.backup.FullBackup$BackupScheme