Merge "Grant SMS permissions to Cell Broadcast receiver which emergency/non-emergency broadcast messages from the network." into mnc-dev
diff --git a/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java
index ec883b9..8e3334ff 100644
--- a/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java
+++ b/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java
@@ -33,6 +33,7 @@
 import android.provider.CalendarContract;
 import android.provider.ContactsContract;
 import android.provider.MediaStore;
+import android.provider.Telephony.Sms.Intents;
 import android.util.ArraySet;
 import android.util.Log;
 
@@ -340,6 +341,15 @@
                 }
             }
 
+            // Cell Broadcast Receiver
+            Intent cbrIntent = new Intent(Intents.SMS_CB_RECEIVED_ACTION);
+            PackageParser.Package cbrPackage =
+                    getDefaultSystemHandlerActivityPackageLPr(cbrIntent, userId);
+
+            if (cbrPackage != null && doesPackageSupportRuntimePermissions(cbrPackage)) {
+                grantRuntimePermissionsLPw(cbrPackage, SMS_PERMISSIONS, false, userId);
+            }
+
             // Calendar
             Intent calendarIntent = new Intent(Intent.ACTION_MAIN);
             calendarIntent.addCategory(Intent.CATEGORY_APP_CALENDAR);