PHP

activity를 1번만 notify 시키게 하기

미스털이 사용자 2024. 10. 30. 18:34
반응형

알람 앱은 화면도 중요하지만 음악 재생도 중요하다. 

설령 2번 연속 액티비티 호출돼서 음악이 2번 재생되면

설정 상세 메뉴를 통해 강제종료시키지 않는 한, 음악 종료를 할 수 없게 된다.

 

notifyManager를 생성해 intent와 pendingIntent를 만들고 설정시킬 때 2가지 옵션을 기억하면 된다.

 

1) FLAG_ACTIVITY_CLEAR_TOP, FLAG_ACTIVITY_ SINGLE_TOP

        Intent fullscreenIntent = new Intent(context, FullscreenIntentActivity.class);
        fullscreenIntent.setAction("fullscreen_activity");
        fullscreenIntent.setFlags(
                    Intent.FLAG_ACTIVITY_CLEAR_TOP
                |   Intent.FLAG_ACTIVITY_SINGLE_TOP);

 

 

2) FLAG_IMMUTABLE, FLAG_ONE_SHOT

        PendingIntent fullscreenPendingIntent = PendingIntent.getActivity(
                context,
                0,
                fullscreenIntent,
                PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_ONE_SHOT
        );

 

 

이렇게 작성해주면 activity는 1번만 실행되면서 음악역시 1번 재생된다.

반응형