【发布时间】:2015-04-22 06:05:13
【问题描述】:
我正在尝试从ContactsContract.CommonDataKinds.Email.ADDRESS 和ContactsContract.CommonDataKinds.Email.DATA、ContactsContract.CommonDataKinds.Email.DATA1 获取电子邮件,所有这些都没有返回我的联系人的电子邮件,其中包含一封电子邮件。我通常会得到上述联系人的电话号码。
到目前为止,我尝试过的一切都失败了..
有什么想法吗?
编辑:到目前为止我已经尝试过什么......
Uri contactData = data.getData();
String[] projection =
{
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER,
ContactsContract.CommonDataKinds.Email.ADDRESS
};
Cursor cursor = getContentResolver().query(contactData,projection,null,null,null);
if(cursor.moveToFirst()){
String phoneName = cursor.getString(2);
Log.d("EMAIL:",phoneName);
}
对于ContactsContract.CommonDataKinds.Email.ADDRESS,我尝试将ADDRESS 替换为.DATA1、DATA、_ID、CONTACT_ID 等。但是,这些都不会返回电子邮件地址,但有些会返回联系人的电话号码,仅此而已。
【问题讨论】:
-
当然,我会编辑我的原始帖子并添加代码。
-
感谢@spaceghost。如果您的问题符合标准,我会投票
-
能否调试代码并检查光标中的值是多少?
-
所以您希望同时返回电话号码和电子邮件地址?
-
我在这里合法地问...这有关系吗?我确实希望两者都返回,但如果我只想要电话号码或电子邮件,我的代码是否必须完全不同?
标签: java android android-intent contactscontract