2012-03-26 2 views
0

나는 내가 때마다 뭔가를 발신 통화가 시작하지 PhoneListener을 추가하는 응용 프로그램을 만든 블랙 베리 커브 9300블랙 베리 : PhoneListener는

를 사용하고 유지되지 않습니다. 리스너가 전화 powerUp(), reset() 또는 fastReset()을 할 때마다 추가되도록 SystemListener 및 SystemListener2를 추가했습니다. 그리고 나는 앱이 시스템 시작시에도 시작되는지 확인했다. 응용 프로그램이 잘 작동합니다.

지금 문제는 전화기를 한동안 사용하지 않고 (몇 시간 정도) 사용하고 다시 사용하기 시작하면 PhoneListener가 작동하지 않는 것입니다. 더 이상 발신 전화를 감지하지 않습니다.

잠시 동안 전화를 사용하지 않으면 PhoneListener가 제거 된 것으로 보입니다. 그 시간 동안 정확히 PhoneListener를 제거하고 처리하는 방법은 무엇입니까?

미리 도움을 청하십시오.

답변

2

조금 이상한 상황입니다. 나는이 경우 어떻게 할 것인지 :

  1. 는 PhoneListener의 메소드를 구현 public void nudge()을 가정 해 봅시다. 이 메서드는 현재 시간과 함께 개체의 현재 상태를 기록합니다. 모든 로그 정보는 장치 파일 시스템의 EventLogger 인스턴스 및/또는 텍스트 파일에 기록되어야합니다.

  2. PhoneListener 개체의 무결성을 제어하는 ​​TimerTask를 구현합니다. 그것은 객체 존재 (! = null)를 확인하고 nudge() 메소드를 호출합니다. 짧은 반복 기간을 설정하면 미디어 카드의 텍스트 파일에 로깅하는 것이 좋습니다. 내부 장치 메모리를 사용하는 방대한 양의 데이터를 EventLogger에 쓰면 장치가 멈추거나 브릭이 발생할 수 있습니다.

  3. 로그 파일 검사.

실마리를 줄 수 있습니다.