summaryrefslogtreecommitdiff
path: root/services/backup
diff options
context:
space:
mode:
author Adam Bookatz <bookatz@google.com> 2024-11-05 09:58:07 -0800
committer Adam Bookatz <bookatz@google.com> 2024-11-05 13:28:15 -0800
commit5352c7b334ab70dc848be81465c63068cb53bdac (patch)
tree95d09ebcd6c4ae6df8e668b4b535fa6c712bd5b6 /services/backup
parentd2a8a229326e5e2d2b0584f2c23b3ccef6563c08 (diff)
Allowlist TelephonyProvider HSUM backup&restore
Allow TelephonyProvider to be eligible for backup&restore on non-user-0 for HSUM devices, since on HSUM the provider really belongs to the MainUser. Test: manual backup and restore of messages on HSUM device Bug: 369560193 Flag: EXEMPT bugfix Change-Id: I4dfd4287a1f291b8c7ec3c2075a109696ffb8baa
Diffstat (limited to 'services/backup')
-rw-r--r--services/backup/java/com/android/server/backup/UserBackupManagerService.java3
-rw-r--r--services/backup/java/com/android/server/backup/utils/BackupEligibilityRules.java7
2 files changed, 10 insertions, 0 deletions
diff --git a/services/backup/java/com/android/server/backup/UserBackupManagerService.java b/services/backup/java/com/android/server/backup/UserBackupManagerService.java
index ddccb3731cc1..466d477992b3 100644
--- a/services/backup/java/com/android/server/backup/UserBackupManagerService.java
+++ b/services/backup/java/com/android/server/backup/UserBackupManagerService.java
@@ -281,6 +281,9 @@ public class UserBackupManagerService {
private static final int SCHEDULE_FILE_VERSION = 1;
public static final String SETTINGS_PACKAGE = "com.android.providers.settings";
+
+ public static final String TELEPHONY_PROVIDER_PACKAGE = "com.android.providers.telephony";
+
public static final String SHARED_BACKUP_AGENT_PACKAGE = "com.android.sharedstoragebackup";
// Pseudoname that we use for the Package Manager metadata "package".
diff --git a/services/backup/java/com/android/server/backup/utils/BackupEligibilityRules.java b/services/backup/java/com/android/server/backup/utils/BackupEligibilityRules.java
index f24a3c1afc86..508b62cd83f0 100644
--- a/services/backup/java/com/android/server/backup/utils/BackupEligibilityRules.java
+++ b/services/backup/java/com/android/server/backup/utils/BackupEligibilityRules.java
@@ -21,6 +21,7 @@ import static com.android.server.backup.BackupManagerService.TAG;
import static com.android.server.backup.UserBackupManagerService.PACKAGE_MANAGER_SENTINEL;
import static com.android.server.backup.UserBackupManagerService.SETTINGS_PACKAGE;
import static com.android.server.backup.UserBackupManagerService.SHARED_BACKUP_AGENT_PACKAGE;
+import static com.android.server.backup.UserBackupManagerService.TELEPHONY_PROVIDER_PACKAGE;
import static com.android.server.backup.UserBackupManagerService.WALLPAPER_PACKAGE;
import static com.android.server.pm.PackageManagerService.PLATFORM_PACKAGE_NAME;
@@ -75,6 +76,12 @@ public class BackupEligibilityRules {
systemPackagesAllowedForProfileUser,
Sets.newArraySet(WALLPAPER_PACKAGE, SETTINGS_PACKAGE));
+ static {
+ if (UserManager.isHeadlessSystemUserMode()) {
+ systemPackagesAllowedForNonSystemUsers.add(TELEPHONY_PROVIDER_PACKAGE);
+ }
+ }
+
private final PackageManager mPackageManager;
private final PackageManagerInternal mPackageManagerInternal;
private final int mUserId;