1

連絡先で利用可能な電子メールの連絡先のみを取得しようとしています。現在、すべての連絡先を表示するソリューションがあり、選択した連絡先に電子メール アドレスがない場合は、電子メール アドレスが見つからないことを示すトーストが表示されます。代わりに、メール アドレスしかない連絡先を表示したいと思います。

私が試したクエリは次のとおりです。

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

                }  
            }

電子メールのクエリ部分を機能させる方法を教えてもらえますか?

ありがとう!

4

1 に答える 1