2011-11-12 7 views
0

保存した連絡先のメールアドレスを取得しようとしています。私のコードでは、私は人の名前を選択することしかできませんでした。今私が必要なのは、選択された人の電子メールを取得し、別のeditTextに保存することです。それを達成する方法?すべてのヘルプは本当に感謝して事前に感謝される...私のコードはここに行く... 2.2フローズンヨーグルトのための私の場合はアンドロイドに連絡先メールを保存するにはどうすればいいですか?

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if (resultCode == RESULT_OK) { 
     switch (requestCode) { 
     case PICK_CONTACT: 

      final EditText phoneInput = (EditText) findViewById(R.id.person); 
      Cursor cursor = null; 
      String phoneNumber = ""; 
      String Name = ""; 
      List<String> allNumbers = new ArrayList<String>(); 
      int phoneIdx = 0; 
      try { 
       Uri result = data.getData(); 
       String id = result.getLastPathSegment(); 
       cursor = getContentResolver().query(Phone.CONTENT_URI, null, Phone.CONTACT_ID + "=?", new String[] { id }, null); 
       phoneIdx = cursor.getColumnIndex(Phone.DISPLAY_NAME); 
       if (cursor.moveToFirst()) { 
        while (cursor.isAfterLast() == false) { 
         phoneNumber = cursor.getString(phoneIdx); 
         allNumbers.add(phoneNumber); 
         cursor.moveToNext(); 
        } 
       } else { 
        //no results actions 
       } 
      } catch (Exception e) { 
       //error actions 
      } finally { 
       if (cursor != null) { 
        cursor.close(); 
       } 

答えて

0

この作品、

Cursor emails = getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI,null,ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = " + contactId,null, null); 
    while (emails.moveToNext())   
    {   
     emailAddress = emails.getString(emails.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA)); 
    }   
    emails.close(); 

詳細情報についてはWorking With Android Contacts

をご覧ください
関連する問題