Loading src/com/android/contacts/common/database/SimContactDao.java +11 −23 Original line number Diff line number Diff line Loading @@ -24,7 +24,6 @@ import android.content.OperationApplicationException; import android.content.pm.PackageManager; import android.database.Cursor; import android.net.Uri; import android.os.AsyncTask; import android.os.Build; import android.os.RemoteException; import android.provider.BaseColumns; Loading @@ -40,14 +39,12 @@ import android.telephony.TelephonyManager; import android.util.SparseArray; import com.android.contacts.R; import com.android.contacts.common.Experiments; import com.android.contacts.common.compat.CompatUtils; import com.android.contacts.common.model.SimCard; import com.android.contacts.common.model.SimContact; import com.android.contacts.common.model.account.AccountWithDataSet; import com.android.contacts.common.util.PermissionsUtil; import com.android.contacts.util.SharedPreferenceUtil; import com.android.contactsbind.experiments.Flags; import com.google.common.base.Joiner; import java.util.ArrayList; Loading Loading @@ -97,17 +94,6 @@ public class SimContactDao { mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); } public void warmupSimQueryIfNeeded() { if (!canReadSimContacts()) return; new AsyncTask<Void, Void, Void>() { @Override protected Void doInBackground(Void... params) { getSimCardsWithContacts(); return null; } }.execute(); } public Context getContext() { return mContext; Loading Loading @@ -279,7 +265,12 @@ public class SimContactDao { return contacts != null ? contacts : loadContactsForSim(sim); } // See b/32831092 // Sometimes the SIM contacts provider seems to get stuck if read from multiple threads // concurrently. So we just have a global lock around it to prevent potential issues. private static final Object SIM_READ_LOCK = new Object(); private ArrayList<SimContact> loadFrom(Uri uri) { synchronized (SIM_READ_LOCK) { final Cursor cursor = mResolver.query(uri, null, null, null, null); try { Loading @@ -288,6 +279,7 @@ public class SimContactDao { cursor.close(); } } } private ArrayList<SimContact> loadFromCursor(Cursor cursor) { final int colId = cursor.getColumnIndex(_ID); Loading Loading @@ -422,10 +414,6 @@ public class SimContactDao { return this; } @Override public void warmupSimQueryIfNeeded() { } @Override public List<SimCard> getSimCards() { return SharedPreferenceUtil.restoreSimStates(getContext(), mSimCards); Loading Loading
src/com/android/contacts/common/database/SimContactDao.java +11 −23 Original line number Diff line number Diff line Loading @@ -24,7 +24,6 @@ import android.content.OperationApplicationException; import android.content.pm.PackageManager; import android.database.Cursor; import android.net.Uri; import android.os.AsyncTask; import android.os.Build; import android.os.RemoteException; import android.provider.BaseColumns; Loading @@ -40,14 +39,12 @@ import android.telephony.TelephonyManager; import android.util.SparseArray; import com.android.contacts.R; import com.android.contacts.common.Experiments; import com.android.contacts.common.compat.CompatUtils; import com.android.contacts.common.model.SimCard; import com.android.contacts.common.model.SimContact; import com.android.contacts.common.model.account.AccountWithDataSet; import com.android.contacts.common.util.PermissionsUtil; import com.android.contacts.util.SharedPreferenceUtil; import com.android.contactsbind.experiments.Flags; import com.google.common.base.Joiner; import java.util.ArrayList; Loading Loading @@ -97,17 +94,6 @@ public class SimContactDao { mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); } public void warmupSimQueryIfNeeded() { if (!canReadSimContacts()) return; new AsyncTask<Void, Void, Void>() { @Override protected Void doInBackground(Void... params) { getSimCardsWithContacts(); return null; } }.execute(); } public Context getContext() { return mContext; Loading Loading @@ -279,7 +265,12 @@ public class SimContactDao { return contacts != null ? contacts : loadContactsForSim(sim); } // See b/32831092 // Sometimes the SIM contacts provider seems to get stuck if read from multiple threads // concurrently. So we just have a global lock around it to prevent potential issues. private static final Object SIM_READ_LOCK = new Object(); private ArrayList<SimContact> loadFrom(Uri uri) { synchronized (SIM_READ_LOCK) { final Cursor cursor = mResolver.query(uri, null, null, null, null); try { Loading @@ -288,6 +279,7 @@ public class SimContactDao { cursor.close(); } } } private ArrayList<SimContact> loadFromCursor(Cursor cursor) { final int colId = cursor.getColumnIndex(_ID); Loading Loading @@ -422,10 +414,6 @@ public class SimContactDao { return this; } @Override public void warmupSimQueryIfNeeded() { } @Override public List<SimCard> getSimCards() { return SharedPreferenceUtil.restoreSimStates(getContext(), mSimCards); Loading