2011-10-12 25 views
0

以下是我的代碼,它顯示的是一個帶有單選按鈕的人的電話號碼類型,但它沒有顯示電子郵件,我還需要選擇電子郵件也是' public void GetContacts(){ Log.i(classTag ,「ContactsButton On Click」); Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);如何獲取像家庭電話號碼,工作電話號碼,家庭電子郵件,工作電子郵件,並把它放在edittext中的Android手機conatacts?

  startActivityForResult(intent, 1); 
     // Log.i(classTag, "contactIntent:"+contactPickerIntent); 



    } 

    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     if (data != null) { 
       Uri uri = data.getData(); 

       if (uri != null) { 
        Cursor c = null; 
        Cursor e=null; 
        try { 


         c = getContentResolver().query(uri, new String[]{ 
            ContactsContract.CommonDataKinds.Phone.NUMBER, 
            ContactsContract.CommonDataKinds.Phone.TYPE ,ContactsContract.CommonDataKinds.Email.DATA,ContactsContract.CommonDataKinds.Email.TYPE}, 
           null, null, null); 
         String number=null; 
         int type=0; 
         String email=null; 
         String emailType=null; 
         if (c != null && c.moveToFirst()) { 
          number = c.getString(0); 
          as=number; 
          type = c.getInt(1); 
          email=c.getString(2); 
          emailType=c.getString(3); 
          Log.i(classTag, "type is:"+type); 
          Log.i(classTag, "email is:"+email); 
          Log.i(classTag, "emailtype is:"+emailType); 
          // showSelectedNumber(type, number); 
          TelephonyManager tMgr =(TelephonyManager)getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE); 
          String iso=tMgr.getNetworkCountryIso(); 
          Log.i("Device iso", "=======>"+iso); 
          String mbNo=tMgr.getLine1Number(); 
          Log.i("mbNo", "=======>"+mbNo); 

           PhoneNumberFormat(number); 
           Intent i=new Intent(Contact.this, Tab.class); 
           i.putExtra("key", number); 
           Contact.this.startActivityForResult(i, 0); 
         } 
         Cursor emails = getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI,null,ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = " + type,null, null); 
         Log.i(classTag, "emai:"+emails); 
         String emailAddress=null; 
         while (emails.moveToNext()) 
         { 
         emailAddress = emails.getString(emails.getColumnIndex(ContactsContract.CommonDataKinds.Email.DATA)); 
         Log.i(classTag, "email is:"+emailAddress); 
         } 
        // as=emailAddress; 

        } finally { 
         if (c != null) { 
          c.close(); 

         } 

        } 
      } 
       } 
} 

回答

相關問題