diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2015-01-24 03:29:05 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2015-01-24 03:29:05 -0800 |
commit | 11a7d2258ad36f6affe5b21e6aa8ca778f9e2f5d (patch) | |
tree | d903cefc4f4a65460ac287d5db705283f634c328 | |
parent | 9cd37497ef51ef5ecee4f64ecc83286dd44494d2 (diff) | |
parent | 4fecdb4056347d36c3a3322f6747df46a5fb6bdd (diff) | |
download | packages_apps_Contacts-11a7d2258ad36f6affe5b21e6aa8ca778f9e2f5d.tar.gz packages_apps_Contacts-11a7d2258ad36f6affe5b21e6aa8ca778f9e2f5d.tar.bz2 packages_apps_Contacts-11a7d2258ad36f6affe5b21e6aa8ca778f9e2f5d.zip |
Merge "Contacts: fix exporting SIM contacts the first time"
-rw-r--r-- | src/com/android/contacts/quickcontact/QuickContactActivity.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/com/android/contacts/quickcontact/QuickContactActivity.java b/src/com/android/contacts/quickcontact/QuickContactActivity.java index 266f9dc3a..c2b6fa275 100644 --- a/src/com/android/contacts/quickcontact/QuickContactActivity.java +++ b/src/com/android/contacts/quickcontact/QuickContactActivity.java @@ -35,6 +35,7 @@ import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.content.pm.ResolveInfo; import android.content.res.Resources; +import android.database.Cursor; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Color; @@ -78,6 +79,7 @@ import android.provider.ContactsContract.RawContacts; import android.support.v7.graphics.Palette; import android.telecom.PhoneAccount; import android.telecom.TelecomManager; +import android.telephony.SubscriptionManager; import android.text.BidiFormatter; import android.text.TextDirectionHeuristics; import android.text.TextUtils; @@ -2694,6 +2696,29 @@ public class QuickContactActivity extends ContactsActivity { int adnCountInSimContact = 1; int anrCountInSimContact = 0; int emailCountInSimContact = 0; + + Cursor cr = null; + // call query first, otherwise the count queries will fail + try{ + long[] subId = SubscriptionManager.getSubId(sub); + if (subId != null + && TelephonyManager.getDefault().isMultiSimEnabled()) { + cr = getContentResolver().query( + Uri.parse(SimContactsConstants.SIM_SUB_URI + + subId[0]), null, null, null, null); + } else { + cr = getContentResolver().query( + Uri.parse(SimContactsConstants.SIM_URI), null, + null, null, null); + } + } catch (NullPointerException e) { + Log.e(TAG, "Exception:" + e); + } finally { + if (cr != null) { + cr.close(); + } + } + if (MoreContactUtils.canSaveAnr(sub)) { anrCountInSimContact = MoreContactUtils.getOneSimAnrCount(sub); } |