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">