일부 데이터 처리를 수행하는 응용 프로그램이 있고 새 항목이 있으면 상태 표시 줄에 사용자에게 알립니다. 프로세스는 설정된 시간에 AlarmManager로 실행됩니다. 모든 것은 정상적으로 작동하지만, 사용자가 애플리케이션을 실제로 사용하는 동안 알림을받는 것을 싫어하는 것이 좋습니다. 이는 AlarmManager가 기본적으로 일시 중지되어야 함을 의미합니다.AlarmManger가 끊임없이 시작하고 중지합니다.
이@Override
public void onResume()
{
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
Intent myIntent = new Intent(this, AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, myIntent, 0);
alarmManager.cancel(pendingIntent);
alarmManager.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + 600000, 600000, pendingIntent);
}
이 완전하지는 않습니다,하지만 난의 최선의 해결책 생각할 수 : 나는 항상 시작입니다 생각할 수있는 유일한 해결책은/유사한이 메인 활동의 onResume 방법에 알람을 중지합니다. 그게 나쁜 습관인지, 아니면 더 나은 해결책이 있는지 궁금해 할뿐입니다. 감사.