2009-12-30 8 views
3

들어오고 나가는 음성 통화에 대해 일부 코드를 알리고 싶습니다. 내가 잡아하는 데 필요한 모든 다음Android 음성 통화 로깅

  • 가 수신 또는 발신 통화
  • 번호 발신 또는 수신 발신자 ID 전화 번호 통화
  • 기간, 또는 그 부재 중 전화
  • 경우라면

전화 번호가 전화 연락처 목록의 누군가와 일치하는 경우 연락 정보, 특히 연락처 이름을 얻을 수 있다면 정말 매끄 럽지만 그 부분은 선택 사항입니다.

전화가 끝나자 마자이 정보를 얻으려면 코드가 필요합니다. 어쩌면 나는 정확한 용어를 찾지 않고 있지만 이것을 성취 할 수있는 예를 찾는 데 어려움을 겪고 있습니다.

다른 사람이 매니페스트 파일에 필요한 브로드 캐스트 수신기 유형의 사용 권한 및 사용 권한과 함께이를 수행하는 코드 예제를 제공 할 수 있다면 좋을 것입니다.

답변

4

매니페스트에 android.permission.PROCESS_OUTGOING_CALLS 권한을 설정하여 android.intent.action.NEW_OUTGOING_CALL 브로드 캐스트 이벤트를 수신하여 발신 전화를 직접 볼 수 있어야합니다.

다른 장치에서 작동해야한다고 생각합니다. 적어도 내 HTC 영웅이 전화 번호를 포함하여 엑스트라가 가득 Intent, 연락처의 이름과 연락처 및 개별 번호가 호출되는 URIs를 제공합니다.

수신 또는 부재 중 전화 (실제로 발신 전화)에 대한 전체 정보를 얻으려면 Mark에서 언급 한 솔루션은 CallLog 콘텐츠 공급자에게 변경 내용을 보거나 관련 PhoneStateListener 이벤트가 발생한 후에 설문 조사를하는 것입니다.