[Android/안드로이드] 연락처에서 전화번호부 가져오기 - ACTION_PICK

2015. 2. 10. 11:02Programing/Android / Java

1. 버튼 클릭 시 가져올 수 있는 화면을 보여 줍니다.

OnClickListener buttonButtonClickListener = new OnClickListener()
{
    @Override
    public void onClick(View v) {
        Intent mIntent = new Intent(Intent.ACTION_PICK);
        mIntent.setData(ContactsContract.CommonDataKinds.Phone.CONTENT_URI);
        startActivityForResult(mIntent, 0);
    }
};        
mBtnContact = (Button) findViewById(R.id.button_contact);
mBtnContact.setOnClickListener(buttonButtonClickListener);

 

 

 

2. 연락처 선택을 하면 결과값을 받아옵니다.

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(resultCode == RESULT_OK)
    {
        Cursor cursor = getContentResolver().query(data.getData(), 
                            new String[]{ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, 
                            ContactsContract.CommonDataKinds.Phone.NUMBER}, null, null, null);
        cursor.moveToFirst();
        String sName   = cursor.getString(0);
        String sNumber = cursor.getString(1);
        cursor.close();
    }
    super.onActivityResult(requestCode, resultCode, data);
}