2017-04-11 27 views
-1

聯繫人列表在Android項目中,我有這個意圖,從我的聯繫人列表採摘電話或電子郵件針對Android

 btnContacts.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      // Open Contacts 
      Intent intent= new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); 
      intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE); 
      startActivityForResult(intent, PICK_CONTACT); 
     } 
    }); 

接一個電話號碼,這讓結果

@Override 
public void onActivityResult(int reqCode, int resultCode, Intent data) { 
    super.onActivityResult(reqCode, resultCode, data); 

    switch (reqCode) { 
     case (PICK_CONTACT) : 
      if (resultCode == Activity.RESULT_OK) { 
       Uri contactUri = data.getData(); 
       String[] projection = new String[] { ContactsContract.CommonDataKinds.Phone.NUMBER, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME }; 
       Cursor cursor = getActivity().getContentResolver().query(contactUri, projection, null, null, null); 
       if (cursor != null && cursor.moveToFirst()) { 
        insertedPhoneNumber = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); 
        String name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME)); 
        formatContact(insertedPhoneNumber, name); 
       } 
      } 
      break; 
    } 
} 

我想知道是否有辦法做同樣的操作,但如果聯繫人dindt有電話號碼,我會改爲收回電子郵件。

+0

檢查本作回答http://stackoverflow.com/q/42250015/6497550 –

+0

檢查我的崗位的答案會回答你所有的問題 http://stackoverflow.com/q/42250015/6497550 –

回答

0

我想知道是否有辦法做同樣的操作,但如果聯繫dindt有電話號碼,我會檢索電子郵件。

不,你要求輸入電話號碼。如果您需要額外的邏輯或if,那麼您需要自己編寫代碼。

+0

是,我的問題是如果我可以要求電話或電子郵件(如果聯繫dindt有電話號碼)。 – Ric

+0

[從聯繫人列表Android獲取電子郵件地址](http://stackoverflow.com/a/10117750/1235698) –

相關問題