0.결과

 

 

 

1.

주소록 앱을 연동하여 주소록 목록 화면을 띄우고 그 목록에서 사용자가 선택한 항목의 전화번호나 이메일을 가져온다

 

//메인코드 (일부)
Intent in = new Intent(Intent.ACTION_PICK);
in.setData(ContactsContract.Contacts.CONTENT_URI);     // 사람 이름 (3번에 설명 있음)
startActivityForResult(in,10);

 

Action 문자열 - Intent.ACTION_PICK

데이터 정보 - ContactsContract.Contacts.CONTENT_URI

로 설정하여 인텐트를 발생시켜 주소록의 목록 화면이 뜨게 된다.

결과를 되돌려받고자 startActivityForResult()함수를 사용했다~!!!!

목록 액티비티가 실행된 후 사용자 선택으로 다시 되돌아왔을 때 onActivityResult()함수가 자동으로 호출된다!!

이곳에서 넘어온 결과값을 확인 할 수 있어!!!!(밑에 코드)

 

//메인코드 (일부)
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
	if(requestCode==10 && resultCode==RESULT_OK){
    	String result = data.getDataString();
        resultView.setText(result);    //내가 만들어 준거
    }
 }

 

 

 

2.설명

만약 사용자가 주소록 목록화면에서 아빠를 선택해여 되돌아왔다고 했을 때 인텐트의 data.getDataString() 함수를 이용하여 넘어온 URL 값을 얻을 수 있다.

 

 

 

3. (0.결과)에 주소록 보이는 형식들

ContactsContract.Contacts.CONTENT_URI 사람 이름
ContactsContract.CommonDataKinds.Phone.CONTENT_URI 사람 이름과 전화번호
ContactsContract.CommonDataKinds.Email.CONTENT_URI 사람 이름과 이메일

 

 

 

-참고-

주소록 상세보기 화면 띄우는거

 

//메인코드 (일부)
Intent in = new Intent(Intent.ACTION_VIEW);
in.setData(Uri.parse(ContactsContract.Contacts.CONTENT_URI+"/"+1066)); // 상세보기
startActivity(in);

 

맨 마지막 숫자는 주속록 쪽의 id 값이다.