diff options
author | Christian Schneppe <christian@pix-art.de> | 2018-11-23 08:30:12 +0100 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2018-11-23 08:51:39 +0100 |
commit | 35d5d97544cd6abc45809a19324898dfbf457467 (patch) | |
tree | 0d358bcb048a3de2aa99f18d1baa71d71b0c29de /src/main/java/de/pixart/messenger/utils/PhoneHelper.java | |
parent | 9ec0a87cc28d134c974e8ca0e0b3fda3d89bca7a (diff) |
refactored phone contact loading in preperation for sync
Diffstat (limited to 'src/main/java/de/pixart/messenger/utils/PhoneHelper.java')
-rw-r--r-- | src/main/java/de/pixart/messenger/utils/PhoneHelper.java | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/src/main/java/de/pixart/messenger/utils/PhoneHelper.java b/src/main/java/de/pixart/messenger/utils/PhoneHelper.java index f5e2ffde1..327ae1904 100644 --- a/src/main/java/de/pixart/messenger/utils/PhoneHelper.java +++ b/src/main/java/de/pixart/messenger/utils/PhoneHelper.java @@ -24,55 +24,6 @@ public class PhoneHelper { return Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID); } - public static void loadPhoneContacts(Context context, final OnPhoneContactsLoadedListener listener) { - final List<Bundle> phoneContacts = new ArrayList<>(); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M - && context.checkSelfPermission(Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) { - listener.onPhoneContactsLoaded(phoneContacts); - return; - } - final String[] PROJECTION = new String[]{ContactsContract.Data._ID, - ContactsContract.Data.DISPLAY_NAME, - ContactsContract.Data.PHOTO_URI, - ContactsContract.Data.LOOKUP_KEY, - ContactsContract.CommonDataKinds.Im.DATA}; - - final String SELECTION = "(" + ContactsContract.Data.MIMETYPE + "=\"" - + ContactsContract.CommonDataKinds.Im.CONTENT_ITEM_TYPE - + "\") AND (" + ContactsContract.CommonDataKinds.Im.PROTOCOL - + "=\"" + ContactsContract.CommonDataKinds.Im.PROTOCOL_JABBER - + "\")"; - - CursorLoader mCursorLoader = new NotThrowCursorLoader(context, - ContactsContract.Data.CONTENT_URI, PROJECTION, SELECTION, null, - null); - mCursorLoader.registerListener(0, (arg0, c) -> { - if (c != null) { - while (c.moveToNext()) { - Bundle contact = new Bundle(); - contact.putInt("phoneid", c.getInt(c.getColumnIndex(ContactsContract.Data._ID))); - contact.putString("displayname", c.getString(c.getColumnIndex(ContactsContract.Data.DISPLAY_NAME))); - contact.putString("photouri", c.getString(c.getColumnIndex(ContactsContract.Data.PHOTO_URI))); - contact.putString("lookup", c.getString(c.getColumnIndex(ContactsContract.Data.LOOKUP_KEY))); - contact.putString("jid", c.getString(c.getColumnIndex(ContactsContract.CommonDataKinds.Im.DATA))); - phoneContacts.add(contact); - } - c.close(); - } - - if (listener != null) { - listener.onPhoneContactsLoaded(phoneContacts); - } - }); - try { - mCursorLoader.startLoading(); - } catch (RejectedExecutionException e) { - if (listener != null) { - listener.onPhoneContactsLoaded(phoneContacts); - } - } - } - public static Uri getProfilePictureUri(Context context) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && context.checkSelfPermission(Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) { return null; @@ -106,24 +57,6 @@ public class PhoneHelper { } } - private static class NotThrowCursorLoader extends CursorLoader { - - private NotThrowCursorLoader(Context c, Uri u, String[] p, String s, String[] sa, String so) { - super(c, u, p, s, sa, so); - } - - @Override - public Cursor loadInBackground() { - - try { - return (super.loadInBackground()); - } catch (Throwable e) { - return (null); - } - } - - } - public static String getOSVersion(Context context) { return "Android/" + android.os.Build.MODEL + "/" + android.os.Build.VERSION.RELEASE; } |