2013-01-22 2 views
0

앱에서 연락처 선택기 기능을 추가하는 것뿐만 아니라 앱의 연락처를 기본 연락처 관리자에 추가하는 기능을 사용하고 있습니다. 삽입하려면 다음과 같이 주소록 관리자를 시작합니다.Android에서 연락처 추가 4.2 앱에 알리지 않음

Intent intent = new Intent(ContactsContract.Intents.Insert.ACTION); 

intent.setType(ContactsContract.RawContacts.CONTENT_TYPE); 
intent.putExtra(ContactsContract.Intents.Insert.PHONE, mCurrentNumber); 
intent.putExtra(ContactsContract.Intents.Insert.PHONE_TYPE, "MyType"); 

mActivity.startActivityForResult(intent, ADD_CONTACT); 

이렇게하면 주소록 관리자가 성공적으로 열리고 지정한 전화 번호로 채워집니다. 하지만 Nexus 7 태블릿에서 주소록 관리자가 돌아 오면 기본 화면으로 돌아가서 내 앱에 어떤 종류의 응답도 보내지 않습니다. 이것은 잘 작동하고 내 ICS 기기에서 예상대로 돌아 오지만, ICS 기기가 Nexus 7이 Google 제품인 경우 ICS 기기가 제조업체의 맞춤 주소록 관리자를 사용하고 있는지 여부는 알 수 없습니다.

누구든지이 문제에 관해 밝힐 수 있습니까? 연락처 관리자를 시작하는 방법에 문제가 있습니까?

EDIT : Nexus 7의 주소록 관리자 옵션 메뉴에서 '삭제'를 선택하면 예상대로 내 앱으로 돌아갑니다. 문제가 발생했을 때만 "완료"버튼을 선택해야합니다. '완료'를 선택하면 주소록 관리자의 기본 메뉴로 이동하여 주소록 관리자를 종료하려고 시도하면 사용자가 홈 화면으로 이동합니다.

답변

1

이에 대한 수정이 접촉 의도에

intent.putExtra("finishActivityOnSaveCompleted", true); 

을 추가했다 밝혀졌습니다. 이것은 onActivityResult에 대한 적절한 호출과 함께 연락처 관리자의 세부 정보보기를 건너 뛰고 내 컨트롤로 컨트롤을 반환했습니다.

관련 문제