代码之家  ›  专栏  ›  技术社区  ›  Terai

我可以在android的联系人提供商上找到哪些信息

  •  0
  • Terai  · 技术社区  · 8 年前

    我正在开发一个android应用程序,我需要知道有关电话联系人的所有信息。

    我开发了一个功能来获取所有联系人的姓名和号码,但我需要有关特定联系人的所有信息,如电子邮件、日期、最喜欢或不喜欢、图像、社交链接(如果可用)。

    我得到了 id , name number 从以下方面:

    String id = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));
    String name = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
    String number = pCur.getString(pCur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
    

    我曾经 ContactsContract.Contacts ContactsContract.CommenDataKinds.Phone 要得到号码。对吗?

    请解释这两种方法的区别。

    _ID是所有联系人的唯一ID吗?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Terai    8 年前

    首先,创建一个光标:

    Cursor cursor = cr.query(ContactsContract.Data.CONTENT_URI, null, null, null, null);
    

    然后,您可以通过使用以下代码行哑光标以显示所有信息,并查看每个联系人及其需要使用的关键字,例如(custom_ringtone、display_name、photo_uri、is_primary,…):

    DatabaseUtils.dumpCursor(cursor);