【问题标题】:Android how to get multiple email addresses of one contact user? [closed]Android如何获取一个联系人用户的多个电子邮件地址? [关闭]
【发布时间】:2013-12-18 06:36:29
【问题描述】:

假设在 Android 中,一个电话联系人有多个电子邮件地址。 我需要获取与特定联系人列表对应的电子邮件列表。 我该怎么做?

【问题讨论】:

    标签: android android-contacts


    【解决方案1】:

    使用以下代码:

         Cursor emailCur = getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI,null
                              ,ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = ?"
                             , new String[]{id},null); 
         while (emailCur.moveToNext()) { 
                    String email = emailCur.getString( emailCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA));
                    Log.e("Email",name+" "+email);
                  } 
                  emailCur.close();
              }
    

    【讨论】:

      【解决方案2】:
      ArrayList emailList = new ArrayList<String>();
      
      Cursor Cur = cr.query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null,
                                  ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = ?", 
                                  new String[]{id}, null); 
      while (Cur.moveToNext()) { 
              String email = Cur.getString(Cur.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA));                            
              emailList.add(email);
          }
      

      【讨论】:

        【解决方案3】:

        以上所有答案都是正确的......但需要更多澄清......就是这样:)

        String homeEmail = emailCur.getString( emailCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.TYPE_HOME));
        
        String mobileEmail = emailCur.getString( emailCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.TYPE_MOBILE));
        
        String workEmail = emailCur.getString( emailCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.TYPE_WORK));
        
        String otherEmail = emailCur.getString( emailCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.TYPE_OTHER));
        
        String customEmail = emailCur.getString( emailCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.TYPE_CUSTOM));
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-11-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多