public class com.android.providers.settings.SettingsBackupAgent extends android.app.backup.BackupAgentHelper
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.android.providers.settings.SettingsBackupAgent
super_class: android.app.backup.BackupAgentHelper
{
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final boolean DEBUG_BACKUP;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final byte[] NULL_VALUE;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int NULL_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -1
private static final java.lang.String KEY_SYSTEM;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "system"
private static final java.lang.String KEY_SECURE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "secure"
private static final java.lang.String KEY_GLOBAL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "global"
private static final java.lang.String KEY_LOCALE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "locale"
private static final java.lang.String KEY_LOCK_SETTINGS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "lock_settings"
private static final java.lang.String KEY_SOFTAP_CONFIG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "softap_config"
private static final java.lang.String KEY_NETWORK_POLICIES;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "network_policies"
private static final java.lang.String KEY_WIFI_NEW_CONFIG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "wifi_new_config"
private static final int STATE_VERSION;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 7
private static final int NETWORK_POLICIES_BACKUP_VERSION;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int STATE_SYSTEM;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int STATE_SECURE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int STATE_LOCALE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int STATE_WIFI_SUPPLICANT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int STATE_WIFI_CONFIG;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int STATE_GLOBAL;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final int STATE_LOCK_SETTINGS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6
private static final int STATE_SOFTAP_CONFIG;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 7
private static final int STATE_NETWORK_POLICIES;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8
private static final int STATE_WIFI_NEW_CONFIG;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 9
private static final int STATE_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static final int[] STATE_SIZES;
descriptor: [I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int FULL_BACKUP_VERSION;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6
private static final int FULL_BACKUP_ADDED_GLOBAL;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int FULL_BACKUP_ADDED_LOCK_SETTINGS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int FULL_BACKUP_ADDED_SOFTAP_CONF;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int FULL_BACKUP_ADDED_NETWORK_POLICIES;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final int FULL_BACKUP_ADDED_WIFI_NEW;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6
private static final int INTEGER_BYTE_COUNT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final byte[] EMPTY_DATA;
descriptor: [B
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "SettingsBackupAgent"
private static final java.lang.String[] PROJECTION;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String KEY_WIFI_SUPPLICANT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "\uFFEDWIFI"
private static final java.lang.String KEY_WIFI_CONFIG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "\uFFEDCONFIG_WIFI"
private static final java.lang.String KEY_LOCK_SETTINGS_OWNER_INFO_ENABLED;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "owner_info_enabled"
private static final java.lang.String KEY_LOCK_SETTINGS_OWNER_INFO;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "owner_info"
private static final java.lang.String KEY_LOCK_SETTINGS_VISIBLE_PATTERN_ENABLED;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "visible_pattern_enabled"
private static final java.lang.String KEY_LOCK_SETTINGS_POWER_BUTTON_INSTANTLY_LOCKS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "power_button_instantly_locks"
private static final java.lang.String STAGE_FILE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "flattened-data"
private static final android.util.ArraySet<java.lang.String> RESTORE_FROM_HIGHER_SDK_INT_SUPPORTED_KEYS;
descriptor: Landroid/util/ArraySet;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Landroid/util/ArraySet<Ljava/lang/String;>;
private com.android.providers.settings.SettingsHelper mSettingsHelper;
descriptor: Lcom/android/providers/settings/SettingsHelper;
flags: (0x0002) ACC_PRIVATE
private android.net.wifi.WifiManager mWifiManager;
descriptor: Landroid/net/wifi/WifiManager;
flags: (0x0002) ACC_PRIVATE
private int mRestoredFromSdkInt;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: iconst_0
newarray 8
putstatic com.android.providers.settings.SettingsBackupAgent.NULL_VALUE:[B
1: bipush 8
newarray 10
dup
iconst_1
2: iconst_4
iastore
dup
iconst_2
3: iconst_5
iastore
dup
iconst_3
4: bipush 6
iastore
dup
iconst_4
5: bipush 7
iastore
dup
iconst_5
6: bipush 8
iastore
dup
bipush 6
7: bipush 9
iastore
dup
bipush 7
8: bipush 10
iastore
9: putstatic com.android.providers.settings.SettingsBackupAgent.STATE_SIZES:[I
10: iconst_0
newarray 8
putstatic com.android.providers.settings.SettingsBackupAgent.EMPTY_DATA:[B
11: iconst_2
anewarray java.lang.String
dup
iconst_0
12: ldc "name"
aastore
dup
iconst_1
13: ldc "value"
aastore
14: putstatic com.android.providers.settings.SettingsBackupAgent.PROJECTION:[Ljava/lang/String;
15: new android.util.ArraySet
dup
iconst_5
anewarray java.lang.String
dup
iconst_0
16: ldc "network_policies"
aastore
dup
iconst_1
17: ldc "wifi_new_config"
aastore
dup
iconst_2
18: ldc "system"
aastore
dup
iconst_3
19: ldc "secure"
aastore
dup
iconst_4
20: ldc "global"
aastore
21: invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokespecial android.util.ArraySet.<init>:(Ljava/util/Collection;)V
22: putstatic com.android.providers.settings.SettingsBackupAgent.RESTORE_FROM_HIGHER_SDK_INT_SUPPORTED_KEYS:Landroid/util/ArraySet;
23: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial android.app.backup.BackupAgentHelper.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/providers/settings/SettingsBackupAgent;
public void onCreate();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
new com.android.providers.settings.SettingsHelper
dup
aload 0
invokespecial com.android.providers.settings.SettingsHelper.<init>:(Landroid/content/Context;)V
putfield com.android.providers.settings.SettingsBackupAgent.mSettingsHelper:Lcom/android/providers/settings/SettingsHelper;
1: aload 0
aload 0
ldc "wifi"
invokevirtual com.android.providers.settings.SettingsBackupAgent.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
checkcast android.net.wifi.WifiManager
putfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
2: aload 0
invokespecial android.app.backup.BackupAgentHelper.onCreate:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/android/providers/settings/SettingsBackupAgent;
public 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: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getSystemSettings:()[B
astore 4
start local 4 1: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getSecureSettings:()[B
astore 5
start local 5 2: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getGlobalSettings:()[B
astore 6
start local 6 3: aload 0
invokestatic android.os.UserHandle.myUserId:()I
invokevirtual com.android.providers.settings.SettingsBackupAgent.getLockSettings:(I)[B
astore 7
start local 7 4: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mSettingsHelper:Lcom/android/providers/settings/SettingsHelper;
invokevirtual com.android.providers.settings.SettingsHelper.getLocaleData:()[B
astore 8
start local 8 5: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getSoftAPConfiguration:()[B
astore 9
start local 9 6: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getNetworkPolicies:()[B
astore 10
start local 10 7: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getNewWifiConfigData:()[B
astore 11
start local 11 8: aload 0
aload 1
invokevirtual com.android.providers.settings.SettingsBackupAgent.readOldChecksums:(Landroid/os/ParcelFileDescriptor;)[J
astore 12
start local 12 9: aload 12
iconst_0
10: aload 0
aload 12
iconst_0
laload
ldc "system"
aload 4
aload 2
invokevirtual com.android.providers.settings.SettingsBackupAgent.writeIfChanged:(JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
11: lastore
12: aload 12
iconst_1
13: aload 0
aload 12
iconst_1
laload
ldc "secure"
aload 5
aload 2
invokevirtual com.android.providers.settings.SettingsBackupAgent.writeIfChanged:(JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
14: lastore
15: aload 12
iconst_5
16: aload 0
aload 12
iconst_5
laload
ldc "global"
aload 6
aload 2
invokevirtual com.android.providers.settings.SettingsBackupAgent.writeIfChanged:(JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
17: lastore
18: aload 12
iconst_2
19: aload 0
aload 12
iconst_2
laload
ldc "locale"
aload 8
aload 2
invokevirtual com.android.providers.settings.SettingsBackupAgent.writeIfChanged:(JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
20: lastore
21: aload 12
iconst_3
lconst_0
lastore
22: aload 12
iconst_4
lconst_0
lastore
23: aload 12
bipush 6
24: aload 0
aload 12
bipush 6
laload
ldc "lock_settings"
25: aload 7
aload 2
26: invokevirtual com.android.providers.settings.SettingsBackupAgent.writeIfChanged:(JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
27: lastore
28: aload 12
bipush 7
29: aload 0
aload 12
bipush 7
laload
ldc "softap_config"
30: aload 9
aload 2
31: invokevirtual com.android.providers.settings.SettingsBackupAgent.writeIfChanged:(JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
32: lastore
33: aload 12
bipush 8
34: aload 0
aload 12
bipush 8
laload
ldc "network_policies"
35: aload 10
aload 2
36: invokevirtual com.android.providers.settings.SettingsBackupAgent.writeIfChanged:(JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
37: lastore
38: aload 12
bipush 9
39: aload 0
aload 12
bipush 9
laload
ldc "wifi_new_config"
40: aload 11
aload 2
41: invokevirtual com.android.providers.settings.SettingsBackupAgent.writeIfChanged:(JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
42: lastore
43: aload 0
aload 12
aload 3
invokevirtual com.android.providers.settings.SettingsBackupAgent.writeNewChecksums:([JLandroid/os/ParcelFileDescriptor;)V
44: return
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 45 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 45 1 oldState Landroid/os/ParcelFileDescriptor;
0 45 2 data Landroid/app/backup/BackupDataOutput;
0 45 3 newState Landroid/os/ParcelFileDescriptor;
1 45 4 systemSettingsData [B
2 45 5 secureSettingsData [B
3 45 6 globalSettingsData [B
4 45 7 lockSettingsData [B
5 45 8 locale [B
6 45 9 softApConfigData [B
7 45 10 netPoliciesData [B
8 45 11 wifiFullConfigData [B
9 45 12 stateChecksums [J
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
oldState
data
newState
public void onRestore(android.app.backup.BackupDataInput, int, android.os.ParcelFileDescriptor);
descriptor: (Landroid/app/backup/BackupDataInput;ILandroid/os/ParcelFileDescriptor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=15, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getContentResolver:()Landroid/content/ContentResolver;
1: ldc "override_settings_provider_restore_any_version"
iconst_0
2: invokestatic android.provider.Settings$Global.getInt:(Landroid/content/ContentResolver;Ljava/lang/String;I)I
3: iconst_1
4: if_icmpne 5
iconst_1
goto 6
StackMap locals:
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 4
start local 4 7: iload 2
getstatic android.os.Build$VERSION.SDK_INT:I
if_icmple 12
iload 4
ifeq 12
8: ldc "SettingsBackupAgent"
new java.lang.StringBuilder
dup
ldc "Ignoring restore from API"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " to API"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: getstatic android.os.Build$VERSION.SDK_INT:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " due to settings flag override."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
11: return
12: StackMap locals: int
StackMap stack:
aload 0
iload 2
putfield com.android.providers.settings.SettingsBackupAgent.mRestoredFromSdkInt:I
13: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 5
start local 5 14: aload 5
invokestatic android.provider.Settings$System.getMovedToGlobalSettings:(Ljava/util/Set;)V
15: aload 5
invokestatic android.provider.Settings$Secure.getMovedToGlobalSettings:(Ljava/util/Set;)V
16: aconst_null
astore 6
start local 6 17: aconst_null
astore 7
start local 7 18: goto 71
19: StackMap locals: java.util.HashSet byte[] byte[]
StackMap stack:
aload 1
invokevirtual android.app.backup.BackupDataInput.getKey:()Ljava/lang/String;
astore 8
start local 8 20: aload 1
invokevirtual android.app.backup.BackupDataInput.getDataSize:()I
istore 9
start local 9 21: iload 2
getstatic android.os.Build$VERSION.SDK_INT:I
if_icmple 28
22: getstatic com.android.providers.settings.SettingsBackupAgent.RESTORE_FROM_HIGHER_SDK_INT_SUPPORTED_KEYS:Landroid/util/ArraySet;
aload 8
invokevirtual android.util.ArraySet.contains:(Ljava/lang/Object;)Z
ifne 28
23: ldc "SettingsBackupAgent"
new java.lang.StringBuilder
dup
ldc "Not restoring unrecognized key '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
24: aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' from future version "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
25: invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
26: aload 1
invokevirtual android.app.backup.BackupDataInput.skipEntityData:()V
27: goto 71
28: StackMap locals: java.lang.String int
StackMap stack:
aload 8
dup
astore 10
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 10
-1772954651: 29
-1243020381: 30
-1097462182: 31
-906273929: 32
-887328209: 33
-355493333: 34
-10958665: 35
379447426: 36
1886014568: 37
2083806273: 38
default: 70
}
StackMap locals: java.lang.String
StackMap stack:
29: aload 10
ldc "\uFFEDCONFIG_WIFI"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 53
goto 70
StackMap locals:
StackMap stack:
30: aload 10
ldc "global"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 44
goto 70
StackMap locals:
StackMap stack:
31: aload 10
ldc "locale"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 49
goto 70
StackMap locals:
StackMap stack:
32: aload 10
ldc "secure"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 42
goto 70
StackMap locals:
StackMap stack:
33: aload 10
ldc "system"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 39
goto 70
StackMap locals:
StackMap stack:
34: aload 10
ldc "wifi_new_config"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 66
goto 70
StackMap locals:
StackMap stack:
35: aload 10
ldc "lock_settings"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 56
goto 70
StackMap locals:
StackMap stack:
36: aload 10
ldc "\uFFEDWIFI"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 46
goto 70
StackMap locals:
StackMap stack:
37: aload 10
ldc "softap_config"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 58
goto 70
StackMap locals:
StackMap stack:
38: aload 10
ldc "network_policies"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 62
goto 70
39: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic android.provider.Settings$System.CONTENT_URI:Landroid/net/Uri;
aload 5
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSettings:(Landroid/app/backup/BackupDataInput;Landroid/net/Uri;Ljava/util/HashSet;)V
40: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mSettingsHelper:Lcom/android/providers/settings/SettingsHelper;
invokevirtual com.android.providers.settings.SettingsHelper.applyAudioSettings:()V
41: goto 71
42: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic android.provider.Settings$Secure.CONTENT_URI:Landroid/net/Uri;
aload 5
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSettings:(Landroid/app/backup/BackupDataInput;Landroid/net/Uri;Ljava/util/HashSet;)V
43: goto 71
44: StackMap locals:
StackMap stack:
aload 0
aload 1
getstatic android.provider.Settings$Global.CONTENT_URI:Landroid/net/Uri;
aconst_null
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSettings:(Landroid/app/backup/BackupDataInput;Landroid/net/Uri;Ljava/util/HashSet;)V
45: goto 71
46: StackMap locals:
StackMap stack:
iload 9
newarray 8
astore 6
47: aload 1
aload 6
iconst_0
iload 9
invokevirtual android.app.backup.BackupDataInput.readEntityData:([BII)I
pop
48: goto 71
49: StackMap locals:
StackMap stack:
iload 9
newarray 8
astore 11
start local 11 50: aload 1
aload 11
iconst_0
iload 9
invokevirtual android.app.backup.BackupDataInput.readEntityData:([BII)I
pop
51: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mSettingsHelper:Lcom/android/providers/settings/SettingsHelper;
aload 11
iload 9
invokevirtual com.android.providers.settings.SettingsHelper.setLocaleData:([BI)V
52: goto 71
end local 11 53: StackMap locals:
StackMap stack:
iload 9
newarray 8
astore 7
54: aload 1
aload 7
iconst_0
iload 9
invokevirtual android.app.backup.BackupDataInput.readEntityData:([BII)I
pop
55: goto 71
56: StackMap locals:
StackMap stack:
aload 0
invokestatic android.os.UserHandle.myUserId:()I
aload 1
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreLockSettings:(ILandroid/app/backup/BackupDataInput;)V
57: goto 71
58: StackMap locals:
StackMap stack:
iload 9
newarray 8
astore 12
start local 12 59: aload 1
aload 12
iconst_0
iload 9
invokevirtual android.app.backup.BackupDataInput.readEntityData:([BII)I
pop
60: aload 0
aload 12
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSoftApConfiguration:([B)V
61: goto 71
end local 12 62: StackMap locals:
StackMap stack:
iload 9
newarray 8
astore 13
start local 13 63: aload 1
aload 13
iconst_0
iload 9
invokevirtual android.app.backup.BackupDataInput.readEntityData:([BII)I
pop
64: aload 0
aload 13
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreNetworkPolicies:([B)V
65: goto 71
end local 13 66: StackMap locals:
StackMap stack:
iload 9
newarray 8
astore 14
start local 14 67: aload 1
aload 14
iconst_0
iload 9
invokevirtual android.app.backup.BackupDataInput.readEntityData:([BII)I
pop
68: aload 0
aload 14
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreNewWifiConfigData:([B)V
69: goto 71
end local 14 70: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.app.backup.BackupDataInput.skipEntityData:()V
end local 9 end local 8 71: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.app.backup.BackupDataInput.readNextHeader:()Z
ifne 19
72: aload 6
ifnull 76
73: aload 0
74: aload 6
aload 7
75: invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSupplicantWifiConfigData:([B[B)V
76: StackMap locals:
StackMap stack:
return
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 77 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 77 1 data Landroid/app/backup/BackupDataInput;
0 77 2 appVersionCode I
0 77 3 newState Landroid/os/ParcelFileDescriptor;
7 77 4 overrideRestoreAnyVersion Z
14 77 5 movedToGlobal Ljava/util/HashSet<Ljava/lang/String;>;
17 77 6 restoredWifiSupplicantData [B
18 77 7 restoredWifiIpConfigData [B
20 71 8 key Ljava/lang/String;
21 71 9 size I
50 53 11 localeData [B
59 62 12 softapData [B
63 66 13 netPoliciesData [B
67 70 14 restoredWifiNewConfigData [B
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=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 1 1 data Landroid/app/backup/FullBackupDataOutput;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
data
public 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: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=21, 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: new java.io.FileInputStream
dup
aload 1
invokevirtual android.os.ParcelFileDescriptor.getFileDescriptor:()Ljava/io/FileDescriptor;
invokespecial java.io.FileInputStream.<init>:(Ljava/io/FileDescriptor;)V
astore 11
start local 11 1: new java.io.DataInputStream
dup
aload 11
invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
astore 12
start local 12 2: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 13
start local 13 3: iload 13
bipush 6
if_icmpgt 57
4: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 14
start local 14 5: aload 14
invokestatic android.provider.Settings$System.getMovedToGlobalSettings:(Ljava/util/Set;)V
6: aload 14
invokestatic android.provider.Settings$Secure.getMovedToGlobalSettings:(Ljava/util/Set;)V
7: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 15
start local 15 8: iload 15
newarray 8
astore 16
start local 16 9: aload 12
aload 16
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
10: aload 0
aload 16
iload 15
getstatic android.provider.Settings$System.CONTENT_URI:Landroid/net/Uri;
aload 14
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSettings:([BILandroid/net/Uri;Ljava/util/HashSet;)V
11: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 15
12: iload 15
aload 16
arraylength
if_icmple 13
iload 15
newarray 8
astore 16
13: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.os.ParcelFileDescriptor long int java.lang.String java.lang.String long long java.io.FileInputStream java.io.DataInputStream int java.util.HashSet int byte[]
StackMap stack:
aload 12
aload 16
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
14: aload 0
aload 16
iload 15
getstatic android.provider.Settings$Secure.CONTENT_URI:Landroid/net/Uri;
aload 14
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSettings:([BILandroid/net/Uri;Ljava/util/HashSet;)V
15: iload 13
iconst_2
if_icmplt 21
16: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 15
17: iload 15
aload 16
arraylength
if_icmple 18
iload 15
newarray 8
astore 16
18: StackMap locals:
StackMap stack:
aload 12
aload 16
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
19: aload 14
invokevirtual java.util.HashSet.clear:()V
20: aload 0
aload 16
iload 15
getstatic android.provider.Settings$Global.CONTENT_URI:Landroid/net/Uri;
aload 14
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSettings:([BILandroid/net/Uri;Ljava/util/HashSet;)V
21: StackMap locals:
StackMap stack:
aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 15
22: iload 15
aload 16
arraylength
if_icmple 23
iload 15
newarray 8
astore 16
23: StackMap locals:
StackMap stack:
aload 12
aload 16
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
24: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mSettingsHelper:Lcom/android/providers/settings/SettingsHelper;
aload 16
iload 15
invokevirtual com.android.providers.settings.SettingsHelper.setLocaleData:([BI)V
25: iload 13
bipush 6
if_icmpge 33
26: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 17
start local 17 27: iload 17
newarray 8
astore 18
start local 18 28: aload 12
aload 18
iconst_0
iload 17
invokevirtual java.io.DataInputStream.readFully:([BII)V
29: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 19
start local 19 30: iload 19
newarray 8
astore 20
start local 20 31: aload 12
aload 20
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
32: aload 0
aload 18
aload 20
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSupplicantWifiConfigData:([B[B)V
end local 20 end local 19 end local 18 end local 17 33: StackMap locals:
StackMap stack:
iload 13
iconst_3
if_icmplt 39
34: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 15
35: iload 15
aload 16
arraylength
if_icmple 36
iload 15
newarray 8
astore 16
36: StackMap locals:
StackMap stack:
iload 15
ifle 39
37: aload 12
aload 16
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
38: aload 0
invokestatic android.os.UserHandle.myUserId:()I
aload 16
iload 15
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreLockSettings:(I[BI)V
39: StackMap locals:
StackMap stack:
iload 13
iconst_4
if_icmplt 45
40: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 15
41: iload 15
aload 16
arraylength
if_icmple 42
iload 15
newarray 8
astore 16
42: StackMap locals:
StackMap stack:
iload 15
ifle 45
43: aload 12
aload 16
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
44: aload 0
aload 16
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSoftApConfiguration:([B)V
45: StackMap locals:
StackMap stack:
iload 13
iconst_5
if_icmplt 51
46: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 15
47: iload 15
aload 16
arraylength
if_icmple 48
iload 15
newarray 8
astore 16
48: StackMap locals:
StackMap stack:
iload 15
ifle 51
49: aload 12
aload 16
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
50: aload 0
aload 16
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreNetworkPolicies:([B)V
51: StackMap locals:
StackMap stack:
iload 13
bipush 6
if_icmplt 59
52: aload 12
invokevirtual java.io.DataInputStream.readInt:()I
istore 15
53: iload 15
aload 16
arraylength
if_icmple 54
iload 15
newarray 8
astore 16
54: StackMap locals:
StackMap stack:
aload 12
aload 16
iconst_0
iload 15
invokevirtual java.io.DataInputStream.readFully:([BII)V
55: aload 0
aload 16
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreNewWifiConfigData:([B)V
end local 16 end local 15 end local 14 56: goto 59
57: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.os.ParcelFileDescriptor.close:()V
58: new java.io.IOException
dup
ldc "Invalid file schema"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
59: StackMap locals:
StackMap stack:
return
end local 13 end local 12 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 60 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 60 1 data Landroid/os/ParcelFileDescriptor;
0 60 2 size J
0 60 4 type I
0 60 5 domain Ljava/lang/String;
0 60 6 relpath Ljava/lang/String;
0 60 7 mode J
0 60 9 mtime J
1 60 11 instream Ljava/io/FileInputStream;
2 60 12 in Ljava/io/DataInputStream;
3 60 13 version I
5 56 14 movedToGlobal Ljava/util/HashSet<Ljava/lang/String;>;
8 56 15 nBytes I
9 56 16 buffer [B
27 33 17 supplicant_size I
28 33 18 supplicant_buffer [B
30 33 19 ipconfig_size I
31 33 20 ipconfig_buffer [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
data
size
type
domain
relpath
mode
mtime
private long[] readOldChecksums(android.os.ParcelFileDescriptor);
descriptor: (Landroid/os/ParcelFileDescriptor;)[J
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: bipush 10
newarray 11
astore 2
start local 2 1: new java.io.DataInputStream
dup
2: new java.io.FileInputStream
dup
aload 1
invokevirtual android.os.ParcelFileDescriptor.getFileDescriptor:()Ljava/io/FileDescriptor;
invokespecial java.io.FileInputStream.<init>:(Ljava/io/FileDescriptor;)V
3: invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
astore 3
start local 3 4: aload 3
invokevirtual java.io.DataInputStream.readInt:()I
istore 4
start local 4 5: iload 4
bipush 7
if_icmple 7
6: bipush 7
istore 4
7: StackMap locals: long[] java.io.DataInputStream int
StackMap stack:
iconst_0
istore 5
start local 5 8: goto 11
9: StackMap locals: int
StackMap stack:
aload 2
iload 5
aload 3
invokevirtual java.io.DataInputStream.readLong:()J
lastore
10: iinc 5 1
StackMap locals:
StackMap stack:
11: iload 5
getstatic com.android.providers.settings.SettingsBackupAgent.STATE_SIZES:[I
iload 4
iaload
if_icmplt 9
end local 5 end local 4 12: goto 14
StackMap locals: com.android.providers.settings.SettingsBackupAgent android.os.ParcelFileDescriptor long[] java.io.DataInputStream
StackMap stack: java.io.EOFException
13: pop
14: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.io.DataInputStream.close:()V
15: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 16 1 oldState Landroid/os/ParcelFileDescriptor;
1 16 2 stateChecksums [J
4 16 3 dataInput Ljava/io/DataInputStream;
5 12 4 stateVersion I
8 12 5 i I
Exception table:
from to target type
4 12 13 Class java.io.EOFException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
oldState
private void writeNewChecksums(long[], android.os.ParcelFileDescriptor);
descriptor: ([JLandroid/os/ParcelFileDescriptor;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new java.io.DataOutputStream
dup
1: new java.io.BufferedOutputStream
dup
new java.io.FileOutputStream
dup
aload 2
invokevirtual android.os.ParcelFileDescriptor.getFileDescriptor:()Ljava/io/FileDescriptor;
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/FileDescriptor;)V
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
2: invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 3
start local 3 3: aload 3
bipush 7
invokevirtual java.io.DataOutputStream.writeInt:(I)V
4: iconst_0
istore 4
start local 4 5: goto 8
6: StackMap locals: java.io.DataOutputStream int
StackMap stack:
aload 3
aload 1
iload 4
laload
invokevirtual java.io.DataOutputStream.writeLong:(J)V
7: iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
bipush 10
if_icmplt 6
end local 4 9: aload 3
invokevirtual java.io.DataOutputStream.close:()V
10: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 11 1 checksums [J
0 11 2 newState Landroid/os/ParcelFileDescriptor;
3 11 3 dataOutput Ljava/io/DataOutputStream;
5 9 4 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
checksums
newState
private long writeIfChanged(long, java.lang.String, byte[], android.app.backup.BackupDataOutput);
descriptor: (JLjava/lang/String;[BLandroid/app/backup/BackupDataOutput;)J
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: new java.util.zip.CRC32
dup
invokespecial java.util.zip.CRC32.<init>:()V
astore 6
start local 6 1: aload 6
aload 4
invokevirtual java.util.zip.CRC32.update:([B)V
2: aload 6
invokevirtual java.util.zip.CRC32.getValue:()J
lstore 7
start local 7 3: lload 1
lload 7
lcmp
ifne 5
4: lload 1
lreturn
5: StackMap locals: java.util.zip.CRC32 long
StackMap stack:
aload 5
aload 3
aload 4
arraylength
invokevirtual android.app.backup.BackupDataOutput.writeEntityHeader:(Ljava/lang/String;I)I
pop
6: aload 5
aload 4
aload 4
arraylength
invokevirtual android.app.backup.BackupDataOutput.writeEntityData:([BI)I
pop
7: goto 9
StackMap locals:
StackMap stack: java.io.IOException
8: pop
9: StackMap locals:
StackMap stack:
lload 7
lreturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 10 1 oldChecksum J
0 10 3 key Ljava/lang/String;
0 10 4 data [B
0 10 5 output Landroid/app/backup/BackupDataOutput;
1 10 6 checkSummer Ljava/util/zip/CRC32;
3 10 7 newChecksum J
Exception table:
from to target type
5 7 8 Class java.io.IOException
MethodParameters:
Name Flags
oldChecksum
key
data
output
private byte[] getSystemSettings();
descriptor: ()[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getContentResolver:()Landroid/content/ContentResolver;
getstatic android.provider.Settings$System.CONTENT_URI:Landroid/net/Uri;
getstatic com.android.providers.settings.SettingsBackupAgent.PROJECTION:[Ljava/lang/String;
aconst_null
1: aconst_null
aconst_null
2: invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
astore 1
start local 1 3: aload 0
aload 1
getstatic android.provider.Settings$System.SETTINGS_TO_BACKUP:[Ljava/lang/String;
invokevirtual com.android.providers.settings.SettingsBackupAgent.extractRelevantValues:(Landroid/database/Cursor;[Ljava/lang/String;)[B
astore 3
4: aload 1
invokeinterface android.database.Cursor.close:()V
5: aload 3
areturn
6: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.database.Cursor
StackMap stack: java.lang.Throwable
astore 2
7: aload 1
invokeinterface android.database.Cursor.close:()V
8: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/android/providers/settings/SettingsBackupAgent;
3 9 1 cursor Landroid/database/Cursor;
Exception table:
from to target type
3 4 6 any
private byte[] getSecureSettings();
descriptor: ()[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getContentResolver:()Landroid/content/ContentResolver;
getstatic android.provider.Settings$Secure.CONTENT_URI:Landroid/net/Uri;
getstatic com.android.providers.settings.SettingsBackupAgent.PROJECTION:[Ljava/lang/String;
aconst_null
1: aconst_null
aconst_null
2: invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
astore 1
start local 1 3: aload 0
aload 1
getstatic android.provider.Settings$Secure.SETTINGS_TO_BACKUP:[Ljava/lang/String;
invokevirtual com.android.providers.settings.SettingsBackupAgent.extractRelevantValues:(Landroid/database/Cursor;[Ljava/lang/String;)[B
astore 3
4: aload 1
invokeinterface android.database.Cursor.close:()V
5: aload 3
areturn
6: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.database.Cursor
StackMap stack: java.lang.Throwable
astore 2
7: aload 1
invokeinterface android.database.Cursor.close:()V
8: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/android/providers/settings/SettingsBackupAgent;
3 9 1 cursor Landroid/database/Cursor;
Exception table:
from to target type
3 4 6 any
private byte[] getGlobalSettings();
descriptor: ()[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getContentResolver:()Landroid/content/ContentResolver;
getstatic android.provider.Settings$Global.CONTENT_URI:Landroid/net/Uri;
getstatic com.android.providers.settings.SettingsBackupAgent.PROJECTION:[Ljava/lang/String;
aconst_null
1: aconst_null
aconst_null
2: invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
astore 1
start local 1 3: aload 0
aload 1
getstatic android.provider.Settings$Global.SETTINGS_TO_BACKUP:[Ljava/lang/String;
invokevirtual com.android.providers.settings.SettingsBackupAgent.extractRelevantValues:(Landroid/database/Cursor;[Ljava/lang/String;)[B
astore 3
4: aload 1
invokeinterface android.database.Cursor.close:()V
5: aload 3
areturn
6: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.database.Cursor
StackMap stack: java.lang.Throwable
astore 2
7: aload 1
invokeinterface android.database.Cursor.close:()V
8: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/android/providers/settings/SettingsBackupAgent;
3 9 1 cursor Landroid/database/Cursor;
Exception table:
from to target type
3 4 6 any
private byte[] getLockSettings(int);
descriptor: (I)[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=9, args_size=2
start local 0 start local 1 0: new com.android.internal.widget.LockPatternUtils
dup
aload 0
invokespecial com.android.internal.widget.LockPatternUtils.<init>:(Landroid/content/Context;)V
astore 2
start local 2 1: aload 2
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.isOwnerInfoEnabled:(I)Z
istore 3
start local 3 2: aload 2
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.getOwnerInfo:(I)Ljava/lang/String;
astore 4
start local 4 3: aload 2
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.isLockPatternEnabled:(I)Z
pop
4: aload 2
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.isVisiblePatternEnabled:(I)Z
istore 5
start local 5 5: aload 2
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.getPowerButtonInstantlyLocks:(I)Z
6: istore 6
start local 6 7: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 7
start local 7 8: new java.io.DataOutputStream
dup
aload 7
invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 8
start local 8 9: aload 8
ldc "owner_info_enabled"
invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
10: aload 8
iload 3
ifeq 11
ldc "1"
goto 12
StackMap locals: com.android.providers.settings.SettingsBackupAgent int com.android.internal.widget.LockPatternUtils int java.lang.String int int java.io.ByteArrayOutputStream java.io.DataOutputStream
StackMap stack: java.io.DataOutputStream
11: ldc "0"
StackMap locals: com.android.providers.settings.SettingsBackupAgent int com.android.internal.widget.LockPatternUtils int java.lang.String int int java.io.ByteArrayOutputStream java.io.DataOutputStream
StackMap stack: java.io.DataOutputStream java.lang.String
12: invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
13: aload 4
ifnull 18
14: aload 8
ldc "owner_info"
invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
15: aload 8
aload 4
ifnull 16
aload 4
goto 17
StackMap locals:
StackMap stack: java.io.DataOutputStream
16: ldc ""
StackMap locals: com.android.providers.settings.SettingsBackupAgent int com.android.internal.widget.LockPatternUtils int java.lang.String int int java.io.ByteArrayOutputStream java.io.DataOutputStream
StackMap stack: java.io.DataOutputStream java.lang.String
17: invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
18: StackMap locals:
StackMap stack:
aload 2
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.isVisiblePatternEverChosen:(I)Z
ifeq 23
19: aload 8
ldc "visible_pattern_enabled"
invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
20: aload 8
iload 5
ifeq 21
ldc "1"
goto 22
StackMap locals:
StackMap stack: java.io.DataOutputStream
21: ldc "0"
StackMap locals: com.android.providers.settings.SettingsBackupAgent int com.android.internal.widget.LockPatternUtils int java.lang.String int int java.io.ByteArrayOutputStream java.io.DataOutputStream
StackMap stack: java.io.DataOutputStream java.lang.String
22: invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
23: StackMap locals:
StackMap stack:
aload 2
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.isPowerButtonInstantlyLocksEverChosen:(I)Z
ifeq 28
24: aload 8
ldc "power_button_instantly_locks"
invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
25: aload 8
iload 6
ifeq 26
ldc "1"
goto 27
StackMap locals:
StackMap stack: java.io.DataOutputStream
26: ldc "0"
StackMap locals: com.android.providers.settings.SettingsBackupAgent int com.android.internal.widget.LockPatternUtils int java.lang.String int int java.io.ByteArrayOutputStream java.io.DataOutputStream
StackMap stack: java.io.DataOutputStream java.lang.String
27: invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
28: StackMap locals:
StackMap stack:
aload 8
ldc ""
invokevirtual java.io.DataOutputStream.writeUTF:(Ljava/lang/String;)V
29: aload 8
invokevirtual java.io.DataOutputStream.flush:()V
30: goto 32
StackMap locals:
StackMap stack: java.io.IOException
31: pop
32: StackMap locals:
StackMap stack:
aload 7
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
areturn
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 33 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 33 1 userId I
1 33 2 lockPatternUtils Lcom/android/internal/widget/LockPatternUtils;
2 33 3 ownerInfoEnabled Z
3 33 4 ownerInfo Ljava/lang/String;
5 33 5 visiblePatternEnabled Z
7 33 6 powerButtonInstantlyLocks Z
8 33 7 baos Ljava/io/ByteArrayOutputStream;
9 33 8 out Ljava/io/DataOutputStream;
Exception table:
from to target type
9 30 31 Class java.io.IOException
MethodParameters:
Name Flags
userId
private void restoreSettings(android.app.backup.BackupDataInput, android.net.Uri, java.util.HashSet<java.lang.String>);
descriptor: (Landroid/app/backup/BackupDataInput;Landroid/net/Uri;Ljava/util/HashSet;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual android.app.backup.BackupDataInput.getDataSize:()I
newarray 8
astore 4
start local 4 1: aload 1
aload 4
iconst_0
aload 4
arraylength
invokevirtual android.app.backup.BackupDataInput.readEntityData:([BII)I
pop
2: goto 6
StackMap locals: com.android.providers.settings.SettingsBackupAgent android.app.backup.BackupDataInput android.net.Uri java.util.HashSet byte[]
StackMap stack: java.io.IOException
3: pop
4: ldc "SettingsBackupAgent"
ldc "Couldn't read entity data"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
5: return
6: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 4
arraylength
aload 2
aload 3
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreSettings:([BILandroid/net/Uri;Ljava/util/HashSet;)V
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 8 1 data Landroid/app/backup/BackupDataInput;
0 8 2 contentUri Landroid/net/Uri;
0 8 3 movedToGlobal Ljava/util/HashSet<Ljava/lang/String;>;
1 8 4 settings [B
Exception table:
from to target type
1 2 3 Class java.io.IOException
Signature: (Landroid/app/backup/BackupDataInput;Landroid/net/Uri;Ljava/util/HashSet<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
data
contentUri
movedToGlobal
private void restoreSettings(byte[], int, android.net.Uri, java.util.HashSet<java.lang.String>);
descriptor: ([BILandroid/net/Uri;Ljava/util/HashSet;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=20, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aconst_null
astore 6
start local 6 1: aload 3
getstatic android.provider.Settings$Secure.CONTENT_URI:Landroid/net/Uri;
invokevirtual android.net.Uri.equals:(Ljava/lang/Object;)Z
ifeq 7
2: aload 0
getstatic android.provider.Settings$Secure.SETTINGS_TO_BACKUP:[Ljava/lang/String;
3: getstatic android.provider.Settings$Secure.LEGACY_RESTORE_SETTINGS:[Ljava/lang/String;
4: invokevirtual com.android.providers.settings.SettingsBackupAgent.concat:([Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
astore 5
start local 5 5: getstatic android.provider.Settings$Secure.VALIDATORS:Ljava/util/Map;
astore 6
6: goto 20
end local 5 StackMap locals: com.android.providers.settings.SettingsBackupAgent byte[] int android.net.Uri java.util.HashSet top java.util.Map
StackMap stack:
7: aload 3
getstatic android.provider.Settings$System.CONTENT_URI:Landroid/net/Uri;
invokevirtual android.net.Uri.equals:(Ljava/lang/Object;)Z
ifeq 13
8: aload 0
getstatic android.provider.Settings$System.SETTINGS_TO_BACKUP:[Ljava/lang/String;
9: getstatic android.provider.Settings$System.LEGACY_RESTORE_SETTINGS:[Ljava/lang/String;
10: invokevirtual com.android.providers.settings.SettingsBackupAgent.concat:([Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
astore 5
start local 5 11: getstatic android.provider.Settings$System.VALIDATORS:Ljava/util/Map;
astore 6
12: goto 20
end local 5 StackMap locals:
StackMap stack:
13: aload 3
getstatic android.provider.Settings$Global.CONTENT_URI:Landroid/net/Uri;
invokevirtual android.net.Uri.equals:(Ljava/lang/Object;)Z
ifeq 19
14: aload 0
getstatic android.provider.Settings$Global.SETTINGS_TO_BACKUP:[Ljava/lang/String;
15: getstatic android.provider.Settings$Global.LEGACY_RESTORE_SETTINGS:[Ljava/lang/String;
16: invokevirtual com.android.providers.settings.SettingsBackupAgent.concat:([Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
astore 5
start local 5 17: getstatic android.provider.Settings$Global.VALIDATORS:Ljava/util/Map;
astore 6
18: goto 20
end local 5 19: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unknown URI: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
start local 5 20: StackMap locals: com.android.providers.settings.SettingsBackupAgent byte[] int android.net.Uri java.util.HashSet java.lang.String[] java.util.Map
StackMap stack:
iconst_0
istore 7
start local 7 21: new android.util.ArrayMap
dup
invokespecial android.util.ArrayMap.<init>:()V
astore 8
start local 8 22: new android.content.ContentValues
dup
iconst_2
invokespecial android.content.ContentValues.<init>:(I)V
astore 9
start local 9 23: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mSettingsHelper:Lcom/android/providers/settings/SettingsHelper;
astore 10
start local 10 24: aload 0
invokevirtual com.android.providers.settings.SettingsBackupAgent.getContentResolver:()Landroid/content/ContentResolver;
astore 11
start local 11 25: aload 5
arraylength
istore 12
start local 12 26: iconst_0
istore 13
start local 13 27: goto 68
28: StackMap locals: com.android.providers.settings.SettingsBackupAgent byte[] int android.net.Uri java.util.HashSet java.lang.String[] java.util.Map int android.util.ArrayMap android.content.ContentValues com.android.providers.settings.SettingsHelper android.content.ContentResolver int int
StackMap stack:
aload 5
iload 13
aaload
astore 14
start local 14 29: aconst_null
astore 15
start local 15 30: iconst_0
istore 16
start local 16 31: aload 8
aload 14
invokevirtual android.util.ArrayMap.indexOfKey:(Ljava/lang/Object;)I
iflt 52
32: aload 8
aload 14
invokevirtual android.util.ArrayMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 15
33: iconst_1
istore 16
34: goto 53
35: StackMap locals: java.lang.String java.lang.String int
StackMap stack:
aload 0
aload 1
iload 7
invokevirtual com.android.providers.settings.SettingsBackupAgent.readInt:([BI)I
istore 17
start local 17 36: iinc 7 4
37: iload 17
iflt 38
new java.lang.String
dup
aload 1
iload 7
iload 17
invokespecial java.lang.String.<init>:([BII)V
goto 39
StackMap locals: int
StackMap stack:
38: aconst_null
StackMap locals:
StackMap stack: java.lang.String
39: astore 18
start local 18 40: iload 7
iload 17
iadd
istore 7
41: aload 0
aload 1
iload 7
invokevirtual com.android.providers.settings.SettingsBackupAgent.readInt:([BI)I
istore 17
42: iinc 7 4
43: aconst_null
astore 19
start local 19 44: iload 17
iflt 47
45: new java.lang.String
dup
aload 1
iload 7
iload 17
invokespecial java.lang.String.<init>:([BII)V
astore 19
46: iload 7
iload 17
iadd
istore 7
47: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 14
aload 18
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 51
48: aload 19
astore 15
49: iconst_1
istore 16
50: goto 53
51: StackMap locals:
StackMap stack:
aload 8
aload 18
aload 19
invokevirtual android.util.ArrayMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 19 end local 18 end local 17 52: StackMap locals:
StackMap stack:
iload 7
iload 2
if_icmplt 35
53: StackMap locals:
StackMap stack:
iload 16
ifne 55
54: goto 67
55: StackMap locals:
StackMap stack:
aload 0
aload 14
aload 15
aload 6
invokevirtual com.android.providers.settings.SettingsBackupAgent.isValidSettingValue:(Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Z
ifne 60
56: ldc "SettingsBackupAgent"
new java.lang.StringBuilder
dup
ldc "Attempted restore of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 14
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " setting, but its value didn't pass"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
57: ldc " validation, value: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
58: invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
59: goto 67
60: StackMap locals:
StackMap stack:
aload 4
ifnull 62
aload 4
aload 14
invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
ifeq 62
61: getstatic android.provider.Settings$Global.CONTENT_URI:Landroid/net/Uri;
goto 63
62: StackMap locals:
StackMap stack:
aload 3
63: StackMap locals:
StackMap stack: android.net.Uri
astore 17
start local 17 64: aload 10
aload 0
aload 11
aload 9
aload 17
aload 14
aload 15
65: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mRestoredFromSdkInt:I
66: invokevirtual com.android.providers.settings.SettingsHelper.restoreValue:(Landroid/content/Context;Landroid/content/ContentResolver;Landroid/content/ContentValues;Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;I)V
end local 17 end local 16 end local 15 end local 14 67: StackMap locals:
StackMap stack:
iinc 13 1
StackMap locals:
StackMap stack:
68: iload 13
iload 12
if_icmplt 28
end local 13 69: return
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 70 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 70 1 settings [B
0 70 2 bytes I
0 70 3 contentUri Landroid/net/Uri;
0 70 4 movedToGlobal Ljava/util/HashSet<Ljava/lang/String;>;
5 7 5 whitelist [Ljava/lang/String;
11 13 5 whitelist [Ljava/lang/String;
17 19 5 whitelist [Ljava/lang/String;
20 70 5 whitelist [Ljava/lang/String;
1 70 6 validators Ljava/util/Map<Ljava/lang/String;Landroid/provider/SettingsValidators$Validator;>;
21 70 7 pos I
22 70 8 cachedEntries Landroid/util/ArrayMap<Ljava/lang/String;Ljava/lang/String;>;
23 70 9 contentValues Landroid/content/ContentValues;
24 70 10 settingsHelper Lcom/android/providers/settings/SettingsHelper;
25 70 11 cr Landroid/content/ContentResolver;
26 70 12 whiteListSize I
27 69 13 i I
29 67 14 key Ljava/lang/String;
30 67 15 value Ljava/lang/String;
31 67 16 hasValueToRestore Z
36 52 17 length I
40 52 18 dataKey Ljava/lang/String;
44 52 19 dataValue Ljava/lang/String;
64 67 17 destination Landroid/net/Uri;
Signature: ([BILandroid/net/Uri;Ljava/util/HashSet<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
settings
bytes
contentUri
movedToGlobal
private boolean isValidSettingValue(java.lang.String, java.lang.String, java.util.Map<java.lang.String, android.provider.SettingsValidators$Validator>);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnull 1
aload 3
ifnonnull 2
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 3
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast android.provider.SettingsValidators$Validator
astore 4
start local 4 3: aload 4
ifnull 4
aload 4
aload 2
invokeinterface android.provider.SettingsValidators$Validator.validate:(Ljava/lang/String;)Z
ifeq 4
iconst_1
ireturn
StackMap locals: android.provider.SettingsValidators$Validator
StackMap stack:
4: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 5 1 key Ljava/lang/String;
0 5 2 value Ljava/lang/String;
0 5 3 validators Ljava/util/Map<Ljava/lang/String;Landroid/provider/SettingsValidators$Validator;>;
3 5 4 validator Landroid/provider/SettingsValidators$Validator;
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Landroid/provider/SettingsValidators$Validator;>;)Z
MethodParameters:
Name Flags
key
value
validators
private final java.lang.String[] concat(java.lang.String[], java.lang.String[]);
descriptor: ([Ljava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnull 1
aload 2
arraylength
ifne 2
1: StackMap locals:
StackMap stack:
aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 1
arraylength
istore 3
start local 3 3: aload 2
arraylength
istore 4
start local 4 4: iload 3
iload 4
iadd
anewarray java.lang.String
astore 5
start local 5 5: aload 1
iconst_0
aload 5
iconst_0
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
6: aload 2
iconst_0
aload 5
iload 3
iload 4
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 8 1 first [Ljava/lang/String;
0 8 2 second [Ljava/lang/String;
3 8 3 firstLen I
4 8 4 secondLen I
5 8 5 both [Ljava/lang/String;
MethodParameters:
Name Flags
first
second
private void restoreLockSettings(int, byte[], int);
descriptor: (I[BI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new com.android.internal.widget.LockPatternUtils
dup
aload 0
invokespecial com.android.internal.widget.LockPatternUtils.<init>:(Landroid/content/Context;)V
astore 4
start local 4 1: new java.io.ByteArrayInputStream
dup
aload 2
iconst_0
iload 3
invokespecial java.io.ByteArrayInputStream.<init>:([BII)V
astore 5
start local 5 2: new java.io.DataInputStream
dup
aload 5
invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
astore 6
start local 6 3: goto 18
start local 7 4: StackMap locals: com.android.providers.settings.SettingsBackupAgent int byte[] int com.android.internal.widget.LockPatternUtils java.io.ByteArrayInputStream java.io.DataInputStream java.lang.String
StackMap stack:
aload 6
invokevirtual java.io.DataInputStream.readUTF:()Ljava/lang/String;
astore 8
start local 8 5: aload 7
dup
astore 9
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 4
-1849966140: 6
412331973: 7
529054396: 8
556982970: 9
default: 18
}
StackMap locals: java.lang.String java.lang.String
StackMap stack:
6: aload 9
ldc "power_button_instantly_locks"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 17
goto 18
StackMap locals:
StackMap stack:
7: aload 9
ldc "visible_pattern_enabled"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 14
goto 18
StackMap locals:
StackMap stack:
8: aload 9
ldc "owner_info_enabled"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 10
goto 18
StackMap locals:
StackMap stack:
9: aload 9
ldc "owner_info"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 12
goto 18
10: StackMap locals:
StackMap stack:
aload 4
ldc "1"
aload 8
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.setOwnerInfoEnabled:(ZI)V
11: goto 18
12: StackMap locals:
StackMap stack:
aload 4
aload 8
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.setOwnerInfo:(Ljava/lang/String;I)V
13: goto 18
14: StackMap locals:
StackMap stack:
aload 4
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.reportPatternWasChosen:(I)V
15: aload 4
ldc "1"
aload 8
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.setVisiblePatternEnabled:(ZI)V
16: goto 18
17: StackMap locals:
StackMap stack:
aload 4
ldc "1"
aload 8
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
iload 1
invokevirtual com.android.internal.widget.LockPatternUtils.setPowerButtonInstantlyLocks:(ZI)V
end local 8 end local 7 18: StackMap locals:
StackMap stack:
aload 6
invokevirtual java.io.DataInputStream.readUTF:()Ljava/lang/String;
dup
astore 7
start local 7 19: invokevirtual java.lang.String.length:()I
ifgt 4
20: aload 6
invokevirtual java.io.DataInputStream.close:()V
end local 7 21: goto 23
StackMap locals:
StackMap stack: java.io.IOException
22: pop
23: StackMap locals:
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 24 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 24 1 userId I
0 24 2 buffer [B
0 24 3 nBytes I
1 24 4 lockPatternUtils Lcom/android/internal/widget/LockPatternUtils;
2 24 5 bais Ljava/io/ByteArrayInputStream;
3 24 6 in Ljava/io/DataInputStream;
4 18 7 key Ljava/lang/String;
19 21 7 key Ljava/lang/String;
5 18 8 value Ljava/lang/String;
Exception table:
from to target type
3 21 22 Class java.io.IOException
MethodParameters:
Name Flags
userId
buffer
nBytes
private void restoreLockSettings(int, android.app.backup.BackupDataInput);
descriptor: (ILandroid/app/backup/BackupDataInput;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual android.app.backup.BackupDataInput.getDataSize:()I
newarray 8
astore 3
start local 3 1: aload 2
aload 3
iconst_0
aload 3
arraylength
invokevirtual android.app.backup.BackupDataInput.readEntityData:([BII)I
pop
2: goto 6
StackMap locals: com.android.providers.settings.SettingsBackupAgent int android.app.backup.BackupDataInput byte[]
StackMap stack: java.io.IOException
3: pop
4: ldc "SettingsBackupAgent"
ldc "Couldn't read entity data"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
5: return
6: StackMap locals:
StackMap stack:
aload 0
iload 1
aload 3
aload 3
arraylength
invokevirtual com.android.providers.settings.SettingsBackupAgent.restoreLockSettings:(I[BI)V
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 8 1 userId I
0 8 2 data Landroid/app/backup/BackupDataInput;
1 8 3 settings [B
Exception table:
from to target type
1 2 3 Class java.io.IOException
MethodParameters:
Name Flags
userId
data
private byte[] extractRelevantValues(android.database.Cursor, java.lang.String[]);
descriptor: (Landroid/database/Cursor;[Ljava/lang/String;)[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=16, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface android.database.Cursor.moveToFirst:()Z
ifne 3
1: ldc "SettingsBackupAgent"
ldc "Couldn't read from the cursor"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
2: iconst_0
newarray 8
areturn
3: StackMap locals:
StackMap stack:
aload 1
ldc "name"
invokeinterface android.database.Cursor.getColumnIndex:(Ljava/lang/String;)I
istore 3
start local 3 4: aload 1
ldc "value"
invokeinterface android.database.Cursor.getColumnIndex:(Ljava/lang/String;)I
istore 4
start local 4 5: iconst_0
istore 5
start local 5 6: iconst_0
istore 6
start local 6 7: aload 2
arraylength
istore 7
start local 7 8: iload 7
iconst_2
imul
anewarray byte[]
astore 8
start local 8 9: new android.util.ArrayMap
dup
invokespecial android.util.ArrayMap.<init>:()V
astore 9
start local 9 10: iconst_0
istore 10
start local 10 11: goto 41
12: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.database.Cursor java.lang.String[] int int int int int byte[][] android.util.ArrayMap int
StackMap stack:
aload 2
iload 10
aaload
astore 11
start local 11 13: aconst_null
astore 12
start local 12 14: iconst_0
istore 13
start local 13 15: aload 9
aload 11
invokevirtual android.util.ArrayMap.indexOfKey:(Ljava/lang/Object;)I
iflt 27
16: aload 9
aload 11
invokevirtual android.util.ArrayMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 12
17: iconst_1
istore 13
18: goto 28
19: StackMap locals: java.lang.String java.lang.String int
StackMap stack:
aload 1
iload 3
invokeinterface android.database.Cursor.getString:(I)Ljava/lang/String;
astore 14
start local 14 20: aload 1
iload 4
invokeinterface android.database.Cursor.getString:(I)Ljava/lang/String;
astore 15
start local 15 21: aload 1
invokeinterface android.database.Cursor.moveToNext:()Z
pop
22: aload 11
aload 14
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 26
23: aload 15
astore 12
24: iconst_1
istore 13
25: goto 28
26: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 9
aload 14
aload 15
invokevirtual android.util.ArrayMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 15 end local 14 27: StackMap locals:
StackMap stack:
aload 1
invokeinterface android.database.Cursor.isAfterLast:()Z
ifeq 19
28: StackMap locals:
StackMap stack:
iload 13
ifne 30
29: goto 40
30: StackMap locals:
StackMap stack:
aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mSettingsHelper:Lcom/android/providers/settings/SettingsHelper;
aload 11
aload 12
invokevirtual com.android.providers.settings.SettingsHelper.onBackupValue:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 12
31: aload 11
invokevirtual java.lang.String.getBytes:()[B
astore 14
start local 14 32: iload 5
iconst_4
aload 14
arraylength
iadd
iadd
istore 5
33: aload 8
iload 6
iconst_2
imul
aload 14
aastore
34: aload 12
ifnull 35
aload 12
invokevirtual java.lang.String.getBytes:()[B
goto 36
StackMap locals: byte[]
StackMap stack:
35: getstatic com.android.providers.settings.SettingsBackupAgent.NULL_VALUE:[B
StackMap locals:
StackMap stack: byte[]
36: astore 15
start local 15 37: iload 5
iconst_4
aload 15
arraylength
iadd
iadd
istore 5
38: aload 8
iload 6
iconst_2
imul
iconst_1
iadd
aload 15
aastore
39: iinc 6 1
end local 15 end local 14 end local 13 end local 12 end local 11 40: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.database.Cursor java.lang.String[] int int int int int byte[][] android.util.ArrayMap int
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
41: iload 10
iload 7
if_icmplt 12
end local 10 42: iload 5
newarray 8
astore 10
start local 10 43: iconst_0
istore 11
start local 11 44: iload 6
iconst_2
imul
istore 12
start local 12 45: iconst_0
istore 13
start local 13 46: goto 54
47: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.database.Cursor java.lang.String[] int int int int int byte[][] android.util.ArrayMap byte[] int int int
StackMap stack:
aload 8
iload 13
aaload
astore 14
start local 14 48: aload 14
getstatic com.android.providers.settings.SettingsBackupAgent.NULL_VALUE:[B
if_acmpeq 52
49: aload 0
aload 10
iload 11
aload 14
arraylength
invokevirtual com.android.providers.settings.SettingsBackupAgent.writeInt:([BII)I
istore 11
50: aload 0
aload 10
iload 11
aload 14
invokevirtual com.android.providers.settings.SettingsBackupAgent.writeBytes:([BI[B)I
istore 11
51: goto 53
52: StackMap locals: byte[]
StackMap stack:
aload 0
aload 10
iload 11
iconst_m1
invokevirtual com.android.providers.settings.SettingsBackupAgent.writeInt:([BII)I
istore 11
end local 14 53: StackMap locals:
StackMap stack:
iinc 13 1
StackMap locals:
StackMap stack:
54: iload 13
iload 12
if_icmplt 47
end local 13 55: aload 10
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 56 1 cursor Landroid/database/Cursor;
0 56 2 settings [Ljava/lang/String;
4 56 3 nameColumnIndex I
5 56 4 valueColumnIndex I
6 56 5 totalSize I
7 56 6 backedUpSettingIndex I
8 56 7 settingsCount I
9 56 8 values [[B
10 56 9 cachedEntries Landroid/util/ArrayMap<Ljava/lang/String;Ljava/lang/String;>;
11 42 10 i I
13 40 11 key Ljava/lang/String;
14 40 12 value Ljava/lang/String;
15 40 13 hasValueToBackup Z
20 27 14 cursorKey Ljava/lang/String;
21 27 15 cursorValue Ljava/lang/String;
32 40 14 keyBytes [B
37 40 15 valueBytes [B
43 56 10 result [B
44 56 11 pos I
45 56 12 keyValuePairCount I
46 55 13 i I
48 53 14 value [B
MethodParameters:
Name Flags
cursor
settings
private void restoreSupplicantWifiConfigData(byte[], byte[]);
descriptor: ([B[B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
aload 1
aload 2
invokevirtual android.net.wifi.WifiManager.restoreSupplicantBackupData:([B[B)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 2 1 supplicant_bytes [B
0 2 2 ipconfig_bytes [B
MethodParameters:
Name Flags
supplicant_bytes
ipconfig_bytes
private byte[] getSoftAPConfiguration();
descriptor: ()[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
invokevirtual android.net.wifi.WifiManager.getWifiApConfiguration:()Landroid/net/wifi/WifiConfiguration;
invokevirtual android.net.wifi.WifiConfiguration.getBytesForBackup:()[B
1: areturn
2: StackMap locals:
StackMap stack: java.io.IOException
astore 1
start local 1 3: ldc "SettingsBackupAgent"
new java.lang.StringBuilder
dup
ldc "Failed to marshal SoftAPConfiguration"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
4: iconst_0
newarray 8
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/android/providers/settings/SettingsBackupAgent;
3 5 1 ioe Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
private void restoreSoftApConfiguration(byte[]);
descriptor: ([B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: new java.io.DataInputStream
dup
new java.io.ByteArrayInputStream
dup
aload 1
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
invokestatic android.net.wifi.WifiConfiguration.getWifiConfigFromBackup:(Ljava/io/DataInputStream;)Landroid/net/wifi/WifiConfiguration;
1: astore 2
start local 2 2: aload 2
getfield android.net.wifi.WifiConfiguration.apBand:I
istore 3
start local 3 3: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
aload 2
invokevirtual android.net.wifi.WifiManager.setWifiApConfiguration:(Landroid/net/wifi/WifiConfiguration;)Z
pop
4: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
invokevirtual android.net.wifi.WifiManager.isDualModeSupported:()Z
istore 4
start local 4 5: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
invokevirtual android.net.wifi.WifiManager.getWifiApConfiguration:()Landroid/net/wifi/WifiConfiguration;
getfield android.net.wifi.WifiConfiguration.apBand:I
istore 5
start local 5 6: iload 4
ifeq 13
7: iload 5
iload 3
if_icmpeq 13
8: ldc "SettingsBackupAgent"
ldc "restored ap configuration requires a conversion, notify the user"
invokestatic android.util.Log.d:(Ljava/lang/String;Ljava/lang/String;)I
pop
9: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
invokevirtual android.net.wifi.WifiManager.notifyUserOfApBandConversion:()V
end local 5 end local 4 end local 3 end local 2 10: goto 13
StackMap locals:
StackMap stack: java.lang.Exception
11: astore 2
start local 2 12: ldc "SettingsBackupAgent"
new java.lang.StringBuilder
dup
ldc "Failed to unMarshal SoftAPConfiguration "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
end local 2 13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 14 1 data [B
2 10 2 config Landroid/net/wifi/WifiConfiguration;
3 10 3 originalApBand I
5 10 4 dualMode Z
6 10 5 storedApBand I
12 13 2 e Ljava/lang/Exception;
Exception table:
from to target type
0 10 11 Class java.io.IOException
0 10 11 Class android.util.BackupUtils$BadVersionException
MethodParameters:
Name Flags
data
private byte[] getNetworkPolicies();
descriptor: ()[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, args_size=1
start local 0 0: aload 0
ldc "netpolicy"
invokevirtual com.android.providers.settings.SettingsBackupAgent.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
checkcast android.net.NetworkPolicyManager
1: astore 1
start local 1 2: aload 1
invokevirtual android.net.NetworkPolicyManager.getNetworkPolicies:()[Landroid/net/NetworkPolicy;
astore 2
start local 2 3: new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 3
start local 3 4: aload 2
ifnull 23
aload 2
arraylength
ifeq 23
5: new java.io.DataOutputStream
dup
aload 3
invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 4
start local 4 6: aload 4
iconst_1
invokevirtual java.io.DataOutputStream.writeInt:(I)V
7: aload 4
aload 2
arraylength
invokevirtual java.io.DataOutputStream.writeInt:(I)V
8: aload 2
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 18
StackMap locals: com.android.providers.settings.SettingsBackupAgent android.net.NetworkPolicyManager android.net.NetworkPolicy[] java.io.ByteArrayOutputStream java.io.DataOutputStream top int int android.net.NetworkPolicy[]
StackMap stack:
9: aload 8
iload 6
aaload
astore 5
start local 5 10: aload 5
ifnull 16
aload 5
getfield android.net.NetworkPolicy.inferred:Z
ifne 16
11: aload 5
invokevirtual android.net.NetworkPolicy.getBytesForBackup:()[B
astore 9
start local 9 12: aload 4
iconst_1
invokevirtual java.io.DataOutputStream.writeByte:(I)V
13: aload 4
aload 9
arraylength
invokevirtual java.io.DataOutputStream.writeInt:(I)V
14: aload 4
aload 9
invokevirtual java.io.DataOutputStream.write:([B)V
end local 9 15: goto 17
16: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.net.NetworkPolicyManager android.net.NetworkPolicy[] java.io.ByteArrayOutputStream java.io.DataOutputStream android.net.NetworkPolicy int int android.net.NetworkPolicy[]
StackMap stack:
aload 4
iconst_0
invokevirtual java.io.DataOutputStream.writeByte:(I)V
end local 5 17: StackMap locals: com.android.providers.settings.SettingsBackupAgent android.net.NetworkPolicyManager android.net.NetworkPolicy[] java.io.ByteArrayOutputStream java.io.DataOutputStream top int int android.net.NetworkPolicy[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
18: iload 6
iload 7
if_icmplt 9
19: goto 23
StackMap locals: com.android.providers.settings.SettingsBackupAgent android.net.NetworkPolicyManager android.net.NetworkPolicy[] java.io.ByteArrayOutputStream java.io.DataOutputStream
StackMap stack: java.io.IOException
20: astore 5
start local 5 21: ldc "SettingsBackupAgent"
new java.lang.StringBuilder
dup
ldc "Failed to convert NetworkPolicies to byte array "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
22: aload 3
invokevirtual java.io.ByteArrayOutputStream.reset:()V
end local 5 end local 4 23: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lcom/android/providers/settings/SettingsBackupAgent;
2 24 1 networkPolicyManager Landroid/net/NetworkPolicyManager;
3 24 2 policies [Landroid/net/NetworkPolicy;
4 24 3 baos Ljava/io/ByteArrayOutputStream;
6 23 4 out Ljava/io/DataOutputStream;
10 17 5 policy Landroid/net/NetworkPolicy;
12 15 9 marshaledPolicy [B
21 23 5 ioe Ljava/io/IOException;
Exception table:
from to target type
6 19 20 Class java.io.IOException
private byte[] getNewWifiConfigData();
descriptor: ()[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
invokevirtual android.net.wifi.WifiManager.retrieveBackupData:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/providers/settings/SettingsBackupAgent;
private void restoreNewWifiConfigData(byte[]);
descriptor: ([B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.android.providers.settings.SettingsBackupAgent.mWifiManager:Landroid/net/wifi/WifiManager;
aload 1
invokevirtual android.net.wifi.WifiManager.restoreBackupData:([B)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 2 1 bytes [B
MethodParameters:
Name Flags
bytes
private void restoreNetworkPolicies(byte[]);
descriptor: ([B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=11, args_size=2
start local 0 start local 1 0: aload 0
ldc "netpolicy"
invokevirtual com.android.providers.settings.SettingsBackupAgent.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
checkcast android.net.NetworkPolicyManager
1: astore 2
start local 2 2: aload 1
ifnull 27
aload 1
arraylength
ifeq 27
3: new java.io.DataInputStream
dup
new java.io.ByteArrayInputStream
dup
aload 1
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
astore 3
start local 3 4: aload 3
invokevirtual java.io.DataInputStream.readInt:()I
istore 4
start local 4 5: iload 4
iconst_1
if_icmplt 6
iload 4
iconst_1
if_icmple 9
6: StackMap locals: android.net.NetworkPolicyManager java.io.DataInputStream int
StackMap stack:
new android.util.BackupUtils$BadVersionException
dup
7: ldc "Unknown Backup Serialization Version"
8: invokespecial android.util.BackupUtils$BadVersionException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.io.DataInputStream.readInt:()I
istore 5
start local 5 10: iload 5
anewarray android.net.NetworkPolicy
astore 6
start local 6 11: iconst_0
istore 7
start local 7 12: goto 22
13: StackMap locals: int android.net.NetworkPolicy[] int
StackMap stack:
aload 3
invokevirtual java.io.DataInputStream.readByte:()B
istore 8
start local 8 14: iload 8
ifne 15
goto 21
15: StackMap locals: int
StackMap stack:
aload 3
invokevirtual java.io.DataInputStream.readInt:()I
istore 9
start local 9 16: iload 9
newarray 8
astore 10
start local 10 17: aload 3
aload 10
iconst_0
iload 9
invokevirtual java.io.DataInputStream.read:([BII)I
pop
18: aload 6
iload 7
19: new java.io.DataInputStream
dup
new java.io.ByteArrayInputStream
dup
aload 10
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
20: invokestatic android.net.NetworkPolicy.getNetworkPolicyFromBackup:(Ljava/io/DataInputStream;)Landroid/net/NetworkPolicy;
aastore
end local 10 end local 9 end local 8 21: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
22: iload 7
iload 5
if_icmplt 13
end local 7 23: aload 2
aload 6
invokevirtual android.net.NetworkPolicyManager.setNetworkPolicies:([Landroid/net/NetworkPolicy;)V
end local 6 end local 5 end local 4 24: goto 27
25: StackMap locals: com.android.providers.settings.SettingsBackupAgent byte[] android.net.NetworkPolicyManager java.io.DataInputStream
StackMap stack: java.lang.Exception
astore 4
start local 4 26: ldc "SettingsBackupAgent"
new java.lang.StringBuilder
dup
ldc "Failed to convert byte array to NetworkPolicies "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
end local 4 end local 3 27: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 28 1 data [B
2 28 2 networkPolicyManager Landroid/net/NetworkPolicyManager;
4 27 3 in Ljava/io/DataInputStream;
5 24 4 version I
10 24 5 length I
11 24 6 policies [Landroid/net/NetworkPolicy;
12 23 7 i I
14 21 8 isNull B
16 21 9 byteLength I
17 21 10 policyData [B
26 27 4 e Ljava/lang/Exception;
Exception table:
from to target type
4 24 25 Class java.lang.NullPointerException
4 24 25 Class java.io.IOException
4 24 25 Class android.util.BackupUtils$BadVersionException
4 24 25 Class java.time.DateTimeException
MethodParameters:
Name Flags
data
private int writeInt(byte[], int, int);
descriptor: ([BII)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iload 2
iconst_0
iadd
iload 3
bipush 24
ishr
sipush 255
iand
i2b
bastore
1: aload 1
iload 2
iconst_1
iadd
iload 3
bipush 16
ishr
sipush 255
iand
i2b
bastore
2: aload 1
iload 2
iconst_2
iadd
iload 3
bipush 8
ishr
sipush 255
iand
i2b
bastore
3: aload 1
iload 2
iconst_3
iadd
iload 3
iconst_0
ishr
sipush 255
iand
i2b
bastore
4: iload 2
iconst_4
iadd
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 5 1 out [B
0 5 2 pos I
0 5 3 value I
MethodParameters:
Name Flags
out
pos
value
private int writeBytes(byte[], int, byte[]);
descriptor: ([BI[B)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
iconst_0
aload 1
iload 2
aload 3
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
1: iload 2
aload 3
arraylength
iadd
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 2 1 out [B
0 2 2 pos I
0 2 3 value [B
MethodParameters:
Name Flags
out
pos
value
private int readInt(byte[], int);
descriptor: ([BI)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iload 2
baload
sipush 255
iand
bipush 24
ishl
1: aload 1
iload 2
iconst_1
iadd
baload
sipush 255
iand
bipush 16
ishl
2: ior
3: aload 1
iload 2
iconst_2
iadd
baload
sipush 255
iand
bipush 8
ishl
4: ior
5: aload 1
iload 2
iconst_3
iadd
baload
sipush 255
iand
iconst_0
ishl
6: ior
istore 3
start local 3 7: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/android/providers/settings/SettingsBackupAgent;
0 8 1 in [B
0 8 2 pos I
7 8 3 result I
MethodParameters:
Name Flags
in
pos
}
SourceFile: "SettingsBackupAgent.java"
InnerClasses:
public VERSION = android.os.Build$VERSION of android.os.Build
public final Global = android.provider.Settings$Global of android.provider.Settings
public final Secure = android.provider.Settings$Secure of android.provider.Settings
public final System = android.provider.Settings$System of android.provider.Settings
public abstract Validator = android.provider.SettingsValidators$Validator of android.provider.SettingsValidators
public BadVersionException = android.util.BackupUtils$BadVersionException of android.util.BackupUtils