문제
저는 오히려 궁금 문제입니다.비 결합 서비스는 전화 코드를 사용하여 아래에서 나의 주요 활동 때 응용 프로그램이 열립니다.
//some code checks if the service is awake. if not then the code below is called
Intent serviceIntent = new Intent(this, SMS_Listener_Service.class);
startService(serviceIntent);
새로운 sms 에 서비스를 기다립니다 3 초간을 통해 타이머를 지키는 콘텐츠를 관찰자가 저장된 데이터를 내부 sms db.그 후에는 호출하는 경이 무거운 들기입니다.
알 수 없는 이유,서비스 때때로 놀고에"다시 시작(이미지 참조)"
흥미로운 것은 그 시도를 강제로 중지에서 서비스 응용 프로그램 섹션에서도 작동하지 않습니다.그것은 사라지 잠시 후 다시 나타납과 같은 메시지를 표시합니다.사용 stopService 코드에서 작동하거나고 OnDestroy 메소드 내에서 서비스 호출되지 않습니다.유일한 방법으로 그 주위에 다시 시작하는 것입니다.
문제는 그 이 상태에 있지 않는 기능입니다.(그 의미를 분석해 들어오는 Sms 메시지)
나는 갤럭시 노트 3 는 안드로이드 4.3
""
나의 혐의로는 경고 실제 구문 분석하지 않는 완벽하고 따라서 전화를 위한 서비스를 중단시키거나 서비스 자체가 호출되지 않습니다.
나의 질문은 방법이 있을 강제로는 경고 있는 걸 멈추?
이 코드에 StartCommand 서비스
public int onStartCommand(Intent intent, int flags, int startId) {
super.onStartCommand(intent, flags, startId);
if (!blnAutoSyncisEnabled) {
stopSelf();
return 0;
} else {
return START_STICKY;
}
}
더 자세히 보기 같은 여기에서 질문 https://stackoverflow.com/posts/21077517/edit
해결책
이 되지 않을 수 있습니다 매우 우아한 솔루션이지만 호출할 수 있는 stopSelf()
에서 직접 서비스 onCreate()
방법 및 처리하는 실제 작업에 그것의 onDestroy()
를 호출하기 전에 super.onDestroy()
.
나는 유사한 문제는 내가 이것을 해결 방법입니다.어쩌면 이것은 당신의 문제를 해결합니다.도.행운을 빕니다.;)