Add fallBackToDefaultHolder="true" for pregrant roles.

These roles are meant to be read-only and initialized by the config, so to handle cases like PC update happens before platform update, we should enable fallBackToDefaultHolder, similar to what we did for the SYSTEM_GALLERY role.

fixes: 185445107
Test: presubmit
Change-Id: Ie3fec1a7698807d98fd760fdafdb3887fe3fa1d7
diff --git a/PermissionController/res/xml/roles.xml b/PermissionController/res/xml/roles.xml
index b2974bf..eb8d26d 100644
--- a/PermissionController/res/xml/roles.xml
+++ b/PermissionController/res/xml/roles.xml
@@ -462,6 +462,7 @@
         behavior="SystemAutomotiveClusterRoleBehavior"
         defaultHolders="config_systemAutomotiveCluster"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -499,6 +500,7 @@
         name="android.app.role.SYSTEM_AUTOMOTIVE_PROJECTION"
         defaultHolders="config_systemAutomotiveProjection"
         exclusive="false"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -521,6 +523,7 @@
         behavior="SystemShellRoleBehavior"
         defaultHolders="config_systemShell"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -538,6 +541,7 @@
         name="android.app.role.SYSTEM_CONTACTS"
         defaultHolders="config_systemContacts"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -550,6 +554,7 @@
         name="android.app.role.SYSTEM_SPEECH_RECOGNIZER"
         defaultHolders="config_systemSpeechRecognizer"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -569,6 +574,7 @@
         name="android.app.role.SYSTEM_WIFI_COEX_MANAGER"
         defaultHolders="config_systemWifiCoexManager"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -582,6 +588,7 @@
         name="android.app.role.SYSTEM_WELLBEING"
         defaultHolders="config_systemWellbeing"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false" >
@@ -597,6 +604,7 @@
         behavior="SystemTelevisionNotificationHandlerRoleBehavior"
         defaultHolders="config_systemTelevisionNotificationHandler"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -613,6 +621,7 @@
         name="android.app.role.SYSTEM_COMPANION_DEVICE_PROVIDER"
         defaultHolders="config_systemCompanionDeviceProvider"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false" >
@@ -633,6 +642,7 @@
         name="android.app.role.SYSTEM_UI_INTELLIGENCE"
         defaultHolders="config_systemUiIntelligence"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -658,6 +668,7 @@
         name="android.app.role.SYSTEM_AMBIENT_AUDIO_INTELLIGENCE"
         defaultHolders="config_systemAmbientAudioIntelligence"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -687,6 +698,7 @@
         name="android.app.role.SYSTEM_AUDIO_INTELLIGENCE"
         defaultHolders="config_systemAudioIntelligence"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -714,6 +726,7 @@
         name="android.app.role.SYSTEM_NOTIFICATION_INTELLIGENCE"
         defaultHolders="config_systemNotificationIntelligence"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -734,6 +747,7 @@
         name="android.app.role.SYSTEM_TEXT_INTELLIGENCE"
         defaultHolders="config_systemTextIntelligence"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
@@ -755,6 +769,7 @@
         name="android.app.role.SYSTEM_VISUAL_INTELLIGENCE"
         defaultHolders="config_systemVisualIntelligence"
         exclusive="true"
+        fallBackToDefaultHolder="true"
         minSdkVersion="31"
         systemOnly="true"
         visible="false">
diff --git a/PermissionController/src/com/android/permissioncontroller/role/RolePermissionProtection.md b/PermissionController/src/com/android/permissioncontroller/role/RolePermissionProtection.md
index 1c3486e..11cd5bc 100644
--- a/PermissionController/src/com/android/permissioncontroller/role/RolePermissionProtection.md
+++ b/PermissionController/src/com/android/permissioncontroller/role/RolePermissionProtection.md
@@ -56,6 +56,7 @@
     name="android.app.role.SYSTEM_YOUR_ROLE_NAME"
     defaultHolders="config_systemYourRoleName"
     exclusive="true"
+    fallBackToDefaultHolder="true"
     minSdkVersion="31"
     systemOnly="true"
     visible="false">