diff options
author | 2024-11-05 09:58:07 -0800 | |
---|---|---|
committer | 2024-11-05 13:28:15 -0800 | |
commit | 5352c7b334ab70dc848be81465c63068cb53bdac (patch) | |
tree | 95d09ebcd6c4ae6df8e668b4b535fa6c712bd5b6 /services/backup | |
parent | d2a8a229326e5e2d2b0584f2c23b3ccef6563c08 (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.java | 3 | ||||
-rw-r--r-- | services/backup/java/com/android/server/backup/utils/BackupEligibilityRules.java | 7 |
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; |