Add utility method isDefaultOrSystemDialer

Will be used by various system components to determine if a
given package name is a privileged Dialer

Bug: 20333102
Bug: 20304411
Change-Id: I1e5bcbde8ee9a5dc6936b118b1b78f32d97737a6
diff --git a/telecomm/java/android/telecom/DefaultDialerManager.java b/telecomm/java/android/telecom/DefaultDialerManager.java
index bf8fac6..537c3f7 100644
--- a/telecomm/java/android/telecom/DefaultDialerManager.java
+++ b/telecomm/java/android/telecom/DefaultDialerManager.java
@@ -150,6 +150,27 @@
     }
 
     /**
+     * Determines if the package name belongs to the user-selected default dialer or the preloaded
+     * system dialer, and thus should be allowed to perform certain privileged operations.
+     *
+     * @param context A valid context.
+     * @param packageName of the package to check for.
+     *
+     * @return {@code true} if the provided package name corresponds to the user-selected default
+     *         dialer or the preloaded system dialer, {@code false} otherwise.
+     *
+     * @hide
+     */
+    public static boolean isDefaultOrSystemDialer(Context context, String packageName) {
+        if (TextUtils.isEmpty(packageName)) {
+            return false;
+        }
+        final TelecomManager tm = getTelecomManager(context);
+        return packageName.equals(tm.getDefaultDialerPackage())
+                || packageName.equals(tm.getSystemDialerPackage());
+    }
+
+    /**
      * Returns the component from a list of application components that corresponds to the package
      * name.
      *