0

내 앱에 서비스가 있고 약용 앱이 있고 서비스가 종료되지 않고 앱이 설치된 상태로 서비스가 실행되기로되어 있습니다. 그래서 나는 거의 접근하지 않고, START_STICKY을 반환하는 정규적인 서비스로 시도했지만 그것이 예정되어있는 것처럼 정확하게 서비스를 재 작성하지는 못했습니다. 그런 다음 전경 서비스로 시도하기로 결정했습니다. 전경 서비스가 안드로이드에 의해 살해 될 수 - : 내가 서비스를 승리 만드는 오전 그래서 나는이 두 가지 질문이 있습니다이Android foreground 서비스가 생성되었는지 확인

startForeground(FOREGROUND_ID, buildForegroundNotification()); 
    return START_STICKY; 
} 

private Notification buildForegroundNotification() { 
    NotificationCompat.Builder b = new NotificationCompat.Builder(this); 
    b.setOngoing(true); 
    b.setContentTitle("My App"); 
    b.setContentText("Therapy is running"); 
    b.setSmallIcon(R.drawable.ic_launcher); 
    return (b.build()); 
} 

같은 onStartCommand? - 서비스가 시작될 때마다 알림을 만들지 않도록 알림이 이미 만들어 졌는지 확인하려면 어떻게해야합니까 (적극적으로 커뮤니케이션 중이므로 활동도 실행 중일 때 서비스가 여러 번 다시 생성 됨)

답변

1

첫 번째 질문은 here을 참조하십시오.

두 번째 질문 : myNotificationManager.notify(int id, Notification notification)을 사용하고 있습니다. ID 필드는 표시 할 알림 유형을 식별하는 데 사용되므로 같은 유형의 알림에 대해 동일한 ID를 설정하면 이전 알림이 새로 만든 알림으로 대체되거나 (이전 알림이 여전히 표시되는 경우) 간단하게 새로운 것 (NotificationManager docs 참조).

관련 문제