Catch SecurityException from enabling backup activity

Cases where the activity is already enabled and the account is an unicorn
account.

Test: Opened activity from backup settings w/ unicorn account, verified
      no crash
Bug: 74199770
Change-Id: I7dc30d22b186ff19cf7c40fda0363ff1288224d1
diff --git a/src/com/android/settings/backup/BackupSettingsActivity.java b/src/com/android/settings/backup/BackupSettingsActivity.java
index 7ffc6cd..d78af32 100644
--- a/src/com/android/settings/backup/BackupSettingsActivity.java
+++ b/src/com/android/settings/backup/BackupSettingsActivity.java
@@ -58,9 +58,17 @@
                         "No manufacturer settings found, launching the backup settings directly");
             }
             Intent intent = backupHelper.getIntentForBackupSettings();
-            // enable the activity before launching it
-            getPackageManager().setComponentEnabledSetting(intent.getComponent(),
-                    PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
+            try {
+                // enable the activity before launching it
+                getPackageManager().setComponentEnabledSetting(
+                        intent.getComponent(),
+                        PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
+                        PackageManager.DONT_KILL_APP);
+            } catch (SecurityException e) {
+                Log.w(TAG, "Trying to enable activity " + intent.getComponent() + " but couldn't: "
+                        + e.getMessage());
+                // the activity may already be enabled
+            }
 
             // use startActivityForResult to let the activity check the caller signature
             startActivityForResult(intent, 1);