2
我有一個HTC legend。在它的手機通訊錄中顯示4-5 contacts.But當我在我的應用程序中查詢它顯示接近45個contacts.I認爲它的gmail聯繫人。ContactsContract API中的問題android
String[] Projection = new String[] { ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.Contacts.PHOTO_ID, ContactsContract.Contacts.HAS_PHONE_NUMBER, ContactsContract.Contacts.STARRED};
光標光標= managedQuery(ContactsContract.Contacts.CONTENT_URI,投影,NULL,NULL,NULL);
我得到的所有照片以及在列表視圖的細節。現在,我需要得到特別的聯繫方式像所有他的電話號碼,電子郵件,照片etc.For這個我寫此查詢
final String[] projection = new String[] { ContactsContract.CommonDataKinds.Phone.CONTACT_ID, ContactsContract.CommonDataKinds.Phone.TYPE, ContactsContract.CommonDataKinds.Phone.NUMBER, ContactsContract.CommonDataKinds.Phone.IS_PRIMARY, }; final Cursor phone = managedQuery( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, projection, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "=?", new String[]{contactId}, null);
> if(phone.moveToFirst()) {
> final int contactNumberColumnIndex =
> phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
> final int contactTypeColumnIndex =
> phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.TYPE);
我收到電話聯繫的所有細節但不是所有其他聯繫人。 我已經讀過所有這些細節存儲在共享表(ContactsContract.Data.CONTENT_URI),但我沒有得到確切的做什麼去做到這一點。
有人可以幫我弄清楚如何做到這一點。
感謝
感謝Stipa答案。 – Rishi
非常有用,適合像我這樣懶惰的開發者。 –