aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicky Wai <rickywai@google.com>2016-03-01 20:36:59 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2016-03-01 20:36:59 +0000
commitdc573da99e53cfbade8bdd2df844b1dbde796983 (patch)
tree0d5863ed99d0a54fd26d967f78c08af2a8a0362f
parent03d89375880bd5693026cf2dcacc1810629cbc90 (diff)
parent932a4eed2d8a5b58dc8335a826a9b156aa01e903 (diff)
downloadContactsProvider-dc573da99e53cfbade8bdd2df844b1dbde796983.tar.gz
Merge "Fix contacts vcard cannot be shared in other profiles" into nyc-dev
-rw-r--r--src/com/android/providers/contacts/enterprise/EnterprisePolicyGuard.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/com/android/providers/contacts/enterprise/EnterprisePolicyGuard.java b/src/com/android/providers/contacts/enterprise/EnterprisePolicyGuard.java
index bc8388fa..d60a9000 100644
--- a/src/com/android/providers/contacts/enterprise/EnterprisePolicyGuard.java
+++ b/src/com/android/providers/contacts/enterprise/EnterprisePolicyGuard.java
@@ -60,6 +60,10 @@ public class EnterprisePolicyGuard {
return false;
}
+ if (isUriWhitelisted(uriCode)) {
+ return true;
+ }
+
final boolean isCallerIdEnabled = !mDpm.getCrossProfileCallerIdDisabled(currentHandle);
final boolean isContactsSearchEnabled =
!mDpm.getCrossProfileContactsSearchDisabled(currentHandle);
@@ -86,6 +90,17 @@ public class EnterprisePolicyGuard {
|| (isBluetoothContactSharing(uriCode) && isBluetoothContactSharingEnabled);
}
+ private boolean isUriWhitelisted(int uriCode) {
+ switch (uriCode) {
+ case ContactsProvider2.PROFILE_AS_VCARD:
+ case ContactsProvider2.CONTACTS_AS_VCARD:
+ case ContactsProvider2.CONTACTS_AS_MULTI_VCARD:
+ return true;
+ default:
+ return false;
+ }
+ }
+
/**
* Check if uri is a cross profile query with directory param supported.
*