区分联系人的电子邮件地址

Posted

技术标签:

【中文标题】区分联系人的电子邮件地址【英文标题】:Distinguish email addresses of a contact 【发布时间】:2012-08-15 20:49:27 【问题描述】:

我有同一个联系人的 3 封电子邮件。我需要将此电子邮件更新到 android 的电话簿。问题是当我尝试这样做时,这 3 封电子邮件的更新方式相同。 3 封电子邮件的停留时间相等。有没有办法区分邮件?

这是我的代码

if(numEmails>1)
     int auxNumEmails=1;
     String tagEtEmail = "ete";
     String tagBtnLabelEmail = "btnLabelMail";
     //Determinar o número de email do content
     do
         EditText etEmail = (EditText)contentEmail.findViewWithTag(tagEtEmail);
         Button etBtnLabelEmail = (Button)contentEmail.findViewWithTag(tagBtnLabelEmail);
         String stEtEmail = etEmail.getText().toString();
         String stBtnLabelEmail = etBtnLabelEmail.getText().toString();
         values.clear();

         String mailWhere = ContactsContract.Data.CONTACT_ID + "=? AND " + ContactsContract.Data.MIMETYPE + "=?" + ContactsContract.CommonDataKinds.Email.DATA+"=?"; 
         String[] mailWhereParams = new String[]String.valueOf(idContacto),ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE, "2"; 
         values.put(ContactsContract.CommonDataKinds.Email.DATA,stEtEmail);

         if(stBtnLabelEmail == "Residência")
         values.put(ContactsContract.CommonDataKinds.Email.TYPE,ContactsContract.CommonDataKinds.Email.TYPE_HOME);
         values.put(ContactsContract.CommonDataKinds.Email.LABEL,stBtnLabelEmail);
         
         else
             if(stBtnLabelEmail == "Emprego")
                 values.put(ContactsContract.CommonDataKinds.Email.TYPE,ContactsContract.CommonDataKinds.Email.TYPE_WORK);
                 values.put(ContactsContract.CommonDataKinds.Email.LABEL,stBtnLabelEmail);
             
         **cr.update(ContactsContract.Data.CONTENT_URI, values, mailWhere, mailWhereParams);**

     tagEtEmail = "ete"+auxNumEmails;
     tagBtnLabelEmail = "btnLabelMail" + auxNumEmails;
     auxNumEmails++;

     while(auxNumEmails<=numEmails);

我需要一种方法来区分电子邮件。 ID?但是怎么做呢?

【问题讨论】:

【参考方案1】:

我用来区分同一联系人的不同电子邮件的解决方案是使用标签属性。每封电子邮件都有一个不同的标签,可以区分每一封。

【讨论】:

以上是关于区分联系人的电子邮件地址的主要内容,如果未能解决你的问题,请参考以下文章

加载联系人以检索电子邮件地址并发送电子邮件

如何从联系人列表中获取电子邮件地址?

我可以从 iCloud 获取联系人的电子邮件地址吗?

我无法从电话联系人中加载电子邮件地址

过滤联系人姓名并删除电子邮件地址

iOS仅提取具有电子邮件地址的联系人