我使用此方法获取电子邮件地址:
JSON.parse
(来源Get only email address from contact list Android)
根据editText中的输入提出邮件列表。
我的实施工作正常,但与Gmail应用程序中注册的邮件相比,获得的邮件地址列表要少得多。
为什么?
当然正确授予权限(READ_CONTACT)。
遗憾的是,我在kitkat下没有更多的终端,但它似乎记得并非如此,该列表与Gmail的列表相当。
目前在android 21,22,23,24下测试。
提前谢谢
答案 0 :(得分:0)
并非设备上存储的所有电子邮件都属于具有名称的真实联系人,您可以尝试直接从电子邮件表中查询所有电子邮件,如果可以,则可以填写第二个查询中具有名称的电子邮件的名称。
cr.query(Email.CONTENT_URI,null, null, null, null);
if (cur.getCount() > 0) {
while (cur.moveToNext()) {
String email = cur.getString(cur.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA));
Log.i("CONTACTS",email);
}
cur.close();
}