在一个 OUTER JOIN 查询中获取所有联系人及其详细信息(例如邮政地址)

2023-12-12

我知道如何检索特定联系人的联系数据。但是,我无法找到一种方法来在单个查询中获取所有联系人及其一些详细信息。以下代码获取所有联系人having邮政地址:

  Uri uri = ContactsContract.CommonDataKinds.StructuredPostal.CONTENT_URI;
  String[] projection = new String[] {
    StructuredPostal._ID,
    StructuredPostal.LOOKUP_KEY,
    StructuredPostal.DISPLAY_NAME,
    StructuredPostal.STREET,
    StructuredPostal.CITY
  };
  String sortOrder = StructuredPostal.DISPLAY_NAME + " COLLATE LOCALIZED ASC";
  Cursor c = getContentResolver().query(uri, projection, null, null, sortOrder);

但我需要的是all联系人,无论他们是否有邮政地址。使用 ContatsContract API 是否可行,或者我是否需要创建自定义外连接查询?有关如何操作的任何提示吗?


如果您有联系 ID 并且想要获取邮政地址,请使用以下命令:

         Uri postal_uri = ContactsContract.CommonDataKinds.StructuredPostal.CONTENT_URI;
         Cursor postal_cursor  = getContentResolver().query(postal_uri,null,  ContactsContract.Data.CONTACT_ID + "="+contactId.toString(), null,null);
          while(postal_cursor.moveToNext())
            {
             String Strt = postal_cursor.getString(postal_cursor.getColumnIndex(StructuredPostal.STREET));
             String Cty = postal_cursor.getString(postal_cursor.getColumnIndex(StructuredPostal.CITY));
             String cntry = postal_cursor.getString(postal_cursor.getColumnIndex(StructuredPostal.COUNTRY));
            } 
            postal_cursor.close();                   
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在一个 OUTER JOIN 查询中获取所有联系人及其详细信息(例如邮政地址) 的相关文章

随机推荐