gpt4 book ai didi

java - ContactsContract.CommonDataKinds.Email.* 返回电话号码

转载 作者:搜寻专家 更新时间:2023-11-01 07:54:40 26 4
gpt4 key购买 nike

我正在尝试从 ContactsContract.CommonDataKinds.Email.ADDRESSContactsContract.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,我尝试用 .DATA1、DATA、_ID、CONTACT_ID 等替换 ADDRESS。没有这些返回电子邮件地址,但是,有些返回电话联系人的号码,仅此而已。

最佳答案

不确定你的代码有什么问题,你能不能只执行下面的代码来获取特定联系人的电子邮件地址。

示例代码:

 public String retrieveMailId(Context ctx, Uri contactUri) {
String email = null, contactId = null;

Cursor cursorID = ctx.getContentResolver().query(contactUri,
new String[] { ContactsContract.Contacts._ID }, null, null,
null);

if (cursorID == null) {
return null;
}

if (cursorID.moveToFirst()) {

contactId = cursorID.getString(cursorID
.getColumnIndex(ContactsContract.Contacts._ID));
}

cursorID.close();

if (TextUtils.isEmpty(contactId)) {
return null;
}

// Using the contact ID now we will get email address.
Cursor cursor = ctx.getContentResolver().query(
ContactsContract.CommonDataKinds.Email.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = "
+ contactId, null, null);

if (cursor.moveToFirst()) {
int colIdx = cursor
.getColumnIndex(ContactsContract.CommonDataKinds.Email.ADDRESS);
email = cursor.getString(colIdx);
}
cursor.close();

return email;

}

关于java - ContactsContract.CommonDataKinds.Email.* 返回电话号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29789040/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com