2013-02-05 2 views
8

콘텐트 정보와 관련이없는 변경 내용을 콘텐트 관찰자가 수신하는 이유를 정말로 이해하지 못합니다. 콘텐트를 청취하기위한 콘텐트 Observer

getContentResolver().registerContentObserver(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, true, contactsObserver); 

그러나 사람에게 사람이나 문자 메시지를 호출 한 후

, 그것은 트리거 및 ContentObserver에서 onChange가 메소드를 호출 : 나는 변경 사항을 듣고 싶어

나는 단순히 URI에 등록. 따라서 나는 할 필요가 없지만 모든 연락처 목록을 내 응용 프로그램과 다시 동기화해야합니다.

만 필드 나는에 관심이 :

ContactsContract.CommonDataKinds.Phone.NUMBER

  • ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME
  • 을 ContactsContract.CommonDataKinds.Phone.CONTACT_ID 이 DB 항목에 대한 변경 내용을 수신하려면 어떤 종류의 변경을 구현해야합니까?

  • +0

    그 해결책이 있으면 알려주세요. 지난 1 주 이후로 동일한 문제가 있습니다. – user3475052

    +0

    @ user3475052 최근 답변이 도움이 될 수 있습니다. – Boris

    +0

    여전히이 문제에 직면하고 있습니다. – GensaGames

    답변

    0

    연락처 데이터베이스에 필드가 있습니다. ContactsContract.Contacts.TIMES_CONTACTED 이 필드는 연락처 목록에있는 사람에게 연락 할 때마다 업데이트됩니다.

    자신의 앱을 사용하여이 입력란을 업데이트 할 수도 있습니다. 즉,이 입력란을 업데이트하는 앱을 사용하여 연락하는 경우 onChange() 메서드가 호출됩니다.

    +0

    여기에는 더 많은 필드가 있는데 예를 들어'ContactsContract.ContactOptionsColumns.LAST_TIME_CONTACTED'가 있습니다. –

    +0

    이것은 아주 오래된 질문입니다. OP가 아직 대기 중이지만 어쩌면 @ user3475052에 관심이 있으십니까? – Boris