diff options
author | Brian Attwell <brianattwell@google.com> | 2015-06-25 21:39:21 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-06-25 21:39:22 +0000 |
commit | 57b5f249a4faf184298cd05fc2c3c17c3f5751b0 (patch) | |
tree | c482c1a6c0ddbd75aae7f1007966052b4e832f38 /src | |
parent | c4cecc7e7534c7f5d887222d9e6f1a43364f7665 (diff) | |
parent | 0b89e307db20d1198d7b17b698d9146ab4607647 (diff) | |
download | packages_apps_Contacts-57b5f249a4faf184298cd05fc2c3c17c3f5751b0.tar.gz packages_apps_Contacts-57b5f249a4faf184298cd05fc2c3c17c3f5751b0.tar.bz2 packages_apps_Contacts-57b5f249a4faf184298cd05fc2c3c17c3f5751b0.zip |
Merge "Check permissions before using associated APIs" into mnc-dev
Diffstat (limited to 'src')
3 files changed, 10 insertions, 3 deletions
diff --git a/src/com/android/contacts/interactions/CalendarInteractionsLoader.java b/src/com/android/contacts/interactions/CalendarInteractionsLoader.java index c3927ce10..481386699 100644 --- a/src/com/android/contacts/interactions/CalendarInteractionsLoader.java +++ b/src/com/android/contacts/interactions/CalendarInteractionsLoader.java @@ -2,6 +2,8 @@ package com.android.contacts.interactions; import com.google.common.base.Preconditions; +import com.android.contacts.common.util.PermissionsUtil; + import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; @@ -9,6 +11,7 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import android.Manifest.permission; import android.content.AsyncTaskLoader; import android.content.ContentValues; import android.content.Context; @@ -55,7 +58,8 @@ public class CalendarInteractionsLoader extends AsyncTaskLoader<List<ContactInte @Override public List<ContactInteraction> loadInBackground() { - if (mEmailAddresses == null || mEmailAddresses.size() < 1) { + if (!PermissionsUtil.hasPermission(getContext(), permission.READ_CALENDAR) + || mEmailAddresses == null || mEmailAddresses.size() < 1) { return Collections.emptyList(); } // Perform separate calendar queries for events in the past and future. diff --git a/src/com/android/contacts/interactions/CallLogInteractionsLoader.java b/src/com/android/contacts/interactions/CallLogInteractionsLoader.java index 46cd315db..2340d3f29 100644 --- a/src/com/android/contacts/interactions/CallLogInteractionsLoader.java +++ b/src/com/android/contacts/interactions/CallLogInteractionsLoader.java @@ -28,6 +28,8 @@ import android.text.TextUtils; import com.google.common.annotations.VisibleForTesting; +import com.android.contacts.common.util.PermissionsUtil; + import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; @@ -48,7 +50,9 @@ public class CallLogInteractionsLoader extends AsyncTaskLoader<List<ContactInter @Override public List<ContactInteraction> loadInBackground() { - if (!getContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_TELEPHONY) + if (!PermissionsUtil.hasPhonePermissions(getContext()) + || !getContext().getPackageManager() + .hasSystemFeature(PackageManager.FEATURE_TELEPHONY) || mPhoneNumbers == null || mPhoneNumbers.length <= 0 || mMaxToRetrieve <= 0) { return Collections.emptyList(); } diff --git a/src/com/android/contacts/quickcontact/QuickContactActivity.java b/src/com/android/contacts/quickcontact/QuickContactActivity.java index 5bfbd10c1..d97d472fa 100644 --- a/src/com/android/contacts/quickcontact/QuickContactActivity.java +++ b/src/com/android/contacts/quickcontact/QuickContactActivity.java @@ -45,7 +45,6 @@ import android.os.AsyncTask; import android.os.Bundle; import android.os.Trace; import android.provider.CalendarContract; -import android.provider.ContactsContract; import android.provider.ContactsContract.CommonDataKinds.Email; import android.provider.ContactsContract.CommonDataKinds.Event; import android.provider.ContactsContract.CommonDataKinds.GroupMembership; |