Loading packages/LocalTransport/src/com/android/localtransport/LocalTransport.java +14 −0 Original line number Diff line number Diff line Loading @@ -16,8 +16,10 @@ package com.android.localtransport; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.backup.BackupAgent; import android.app.backup.BackupAnnotations; import android.app.backup.BackupDataInput; import android.app.backup.BackupDataOutput; import android.app.backup.BackupManagerMonitor; Loading Loading @@ -52,6 +54,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; /** * Backup transport for stashing stuff into a known location on disk, and Loading Loading @@ -939,4 +942,15 @@ public class LocalTransport extends BackupTransport { } } } @NonNull @Override public List<String> getPackagesThatShouldNotUseRestrictedMode( @NonNull List<String> packageNames, @BackupAnnotations.OperationType int operationType) { if (DEBUG) { Log.d(TAG, "No restricted mode packages: " + mParameters.noRestrictedModePackages()); } return mParameters.noRestrictedModePackages(); } } packages/LocalTransport/src/com/android/localtransport/LocalTransportParameters.java +17 −2 Original line number Diff line number Diff line Loading @@ -16,26 +16,33 @@ package com.android.localtransport; import android.util.KeyValueSettingObserver; import android.content.ContentResolver; import android.os.Handler; import android.provider.Settings; import android.util.KeyValueListParser; import android.util.KeyValueSettingObserver; import java.util.Arrays; import java.util.List; public class LocalTransportParameters extends KeyValueSettingObserver { private static final String TAG = "LocalTransportParams"; private static final String SETTING = Settings.Secure.BACKUP_LOCAL_TRANSPORT_PARAMETERS; private static final String KEY_FAKE_ENCRYPTION_FLAG = "fake_encryption_flag"; private static final String KEY_NON_INCREMENTAL_ONLY = "non_incremental_only"; private static final String KEY_IS_DEVICE_TRANSFER = "is_device_transfer"; private static final String KEY_IS_ENCRYPTED = "is_encrypted"; private static final String KEY_LOG_AGENT_RESULTS = "log_agent_results"; // This needs to be a list of package names separated by semicolons. For example: // "com.package1;com.package2;com.package3". We can't use commas because the base class uses // commas to split Key/Value pairs. private static final String KEY_NO_RESTRICTED_MODE_PACKAGES = "no_restricted_mode_packages"; private boolean mFakeEncryptionFlag; private boolean mIsNonIncrementalOnly; private boolean mIsDeviceTransfer; private boolean mIsEncrypted; private boolean mLogAgentResults; private String mNoRestrictedModePackages; public LocalTransportParameters(Handler handler, ContentResolver resolver) { super(handler, resolver, Settings.Secure.getUriFor(SETTING)); Loading @@ -61,6 +68,13 @@ public class LocalTransportParameters extends KeyValueSettingObserver { return mLogAgentResults; } List<String> noRestrictedModePackages() { if (mNoRestrictedModePackages == null) { return List.of(); } return Arrays.stream(mNoRestrictedModePackages.split(";")).toList(); } public String getSettingValue(ContentResolver resolver) { return Settings.Secure.getString(resolver, SETTING); } Loading @@ -71,5 +85,6 @@ public class LocalTransportParameters extends KeyValueSettingObserver { mIsDeviceTransfer = parser.getBoolean(KEY_IS_DEVICE_TRANSFER, false); mIsEncrypted = parser.getBoolean(KEY_IS_ENCRYPTED, false); mLogAgentResults = parser.getBoolean(KEY_LOG_AGENT_RESULTS, /* def */ false); mNoRestrictedModePackages = parser.getString(KEY_NO_RESTRICTED_MODE_PACKAGES, /* def */ ""); } } Loading
packages/LocalTransport/src/com/android/localtransport/LocalTransport.java +14 −0 Original line number Diff line number Diff line Loading @@ -16,8 +16,10 @@ package com.android.localtransport; import android.annotation.NonNull; import android.annotation.Nullable; import android.app.backup.BackupAgent; import android.app.backup.BackupAnnotations; import android.app.backup.BackupDataInput; import android.app.backup.BackupDataOutput; import android.app.backup.BackupManagerMonitor; Loading Loading @@ -52,6 +54,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; /** * Backup transport for stashing stuff into a known location on disk, and Loading Loading @@ -939,4 +942,15 @@ public class LocalTransport extends BackupTransport { } } } @NonNull @Override public List<String> getPackagesThatShouldNotUseRestrictedMode( @NonNull List<String> packageNames, @BackupAnnotations.OperationType int operationType) { if (DEBUG) { Log.d(TAG, "No restricted mode packages: " + mParameters.noRestrictedModePackages()); } return mParameters.noRestrictedModePackages(); } }
packages/LocalTransport/src/com/android/localtransport/LocalTransportParameters.java +17 −2 Original line number Diff line number Diff line Loading @@ -16,26 +16,33 @@ package com.android.localtransport; import android.util.KeyValueSettingObserver; import android.content.ContentResolver; import android.os.Handler; import android.provider.Settings; import android.util.KeyValueListParser; import android.util.KeyValueSettingObserver; import java.util.Arrays; import java.util.List; public class LocalTransportParameters extends KeyValueSettingObserver { private static final String TAG = "LocalTransportParams"; private static final String SETTING = Settings.Secure.BACKUP_LOCAL_TRANSPORT_PARAMETERS; private static final String KEY_FAKE_ENCRYPTION_FLAG = "fake_encryption_flag"; private static final String KEY_NON_INCREMENTAL_ONLY = "non_incremental_only"; private static final String KEY_IS_DEVICE_TRANSFER = "is_device_transfer"; private static final String KEY_IS_ENCRYPTED = "is_encrypted"; private static final String KEY_LOG_AGENT_RESULTS = "log_agent_results"; // This needs to be a list of package names separated by semicolons. For example: // "com.package1;com.package2;com.package3". We can't use commas because the base class uses // commas to split Key/Value pairs. private static final String KEY_NO_RESTRICTED_MODE_PACKAGES = "no_restricted_mode_packages"; private boolean mFakeEncryptionFlag; private boolean mIsNonIncrementalOnly; private boolean mIsDeviceTransfer; private boolean mIsEncrypted; private boolean mLogAgentResults; private String mNoRestrictedModePackages; public LocalTransportParameters(Handler handler, ContentResolver resolver) { super(handler, resolver, Settings.Secure.getUriFor(SETTING)); Loading @@ -61,6 +68,13 @@ public class LocalTransportParameters extends KeyValueSettingObserver { return mLogAgentResults; } List<String> noRestrictedModePackages() { if (mNoRestrictedModePackages == null) { return List.of(); } return Arrays.stream(mNoRestrictedModePackages.split(";")).toList(); } public String getSettingValue(ContentResolver resolver) { return Settings.Secure.getString(resolver, SETTING); } Loading @@ -71,5 +85,6 @@ public class LocalTransportParameters extends KeyValueSettingObserver { mIsDeviceTransfer = parser.getBoolean(KEY_IS_DEVICE_TRANSFER, false); mIsEncrypted = parser.getBoolean(KEY_IS_ENCRYPTED, false); mLogAgentResults = parser.getBoolean(KEY_LOG_AGENT_RESULTS, /* def */ false); mNoRestrictedModePackages = parser.getString(KEY_NO_RESTRICTED_MODE_PACKAGES, /* def */ ""); } }