連絡先で利用可能な電子メールの連絡先のみを取得しようとしています。現在、すべての連絡先を表示するソリューションがあり、選択した連絡先に電子メール アドレスがない場合は、電子メール アドレスが見つからないことを示すトーストが表示されます。代わりに、メール アドレスしかない連絡先を表示したいと思います。
私が試したクエリは次のとおりです。
Cursor cursor = null;
String emailid = "";
List<String> allids = new ArrayList<String>();
int emailIds = 0;
try
{
Uri result = data.getData();
String id = result.getLastPathSegment();
Log.e("Email","TRY"+emailid);
cursor = getContentResolver().query(Email.CONTENT_URI, null, Email.CONTACT_ID + "=?", new String[] { id }, null);
/*cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null, ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = ?",
new String[]{id}, null);*/
emailIds = cursor.getColumnIndex(Email.DATA);
if (cursor.moveToFirst())
{
while (cursor.isAfterLast() == false)
{
emailid = cursor.getString(emailIdx);
allids.add(emailid);
cursor.moveToNext();
}
}
else
{
//no results actions
}
}
電子メールのクエリ部分を機能させる方法を教えてもらえますか?
ありがとう!