SLaks 2013-03-29 08:33 采纳率: 0%
浏览 3245
已采纳

如何从电话的联系表中获取email?

我想从手机的联系列表中获取不同的电子邮件地址,比如工作,家庭住址等。我用的下面的代码,但是发现返回的结果是0。怎么回事啊?

Cursor email = cr.query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null,
                Data.CONTACT_ID + " =" + id, null, null);
        while (email.moveToNext()) {
            emailAdd = email.getString(ContactsContract.CommonDataKinds.Email.TYPE_WORK);
            //ContactsContract.CommonDataKinds.Email.TYPE_HOME)
        }
        Log.v("anim", " emailAdd:    " + emailAdd);

我还需要获取群组,昵称,个人网站。

  • 写回答

1条回答

  • nana4ever 2013-04-02 07:39
    关注
    Cursor emailCur = cr.query( 
        ContactsContract.CommonDataKinds.Email.CONTENT_URI, 
        null,
        ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = ?", 
        new String[]{id}, null); 
    while (emailCur.moveToNext()) { 
        // This would allow you get several email addresses
            // if the email addresses were stored in an array
        String email = emailCur.getString(
                      emailCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA));
        String emailType = emailCur.getString(
                      emailCur.getColumnIndex(ContactsContract.CommonDataKinds.Email.TYPE)); 
    } 
    emailCur.close();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置