유저가 댓글을 달면 각 댓글에 대해서 상태바에 별도의 notification(id를 각각 별도로 줌)으로 나오게 한 상태입니다.
알림을 클릭하면 아래와 같이 DummyActivity가 실행되게 했고 앱이 실행되어있는지 여부에 따라 DummyActivity안에서
StartActivity와 ViewActivity를 분기해서 실행하도록 구현하였습니다.
(requestId와 알림id는 서로 동일하게 맞춰주고 있고 그 값 자체는 알림 마다 다르게 지정해 주고 있습니다.)
Intent i = new Intent(MyApp.getAppContext(), DummyActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(MyApp.getAppContext(), id,
i, PendingIntent.FLAG_UPDATE_CURRENT);
여기에서 StartActivity는 메인 Activity로써 Manifest에 아래와 같이 설정이 되어있습니다.
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
DummyActivity 내부에서는 아래와 같이 분기를 태우고 있습니다.
if (앱이 실행 중이 아닐 때 ) {
intent = new Intent(getApplicationContext(), StartActivity.class);
} else {
intent = new Intent(getApplicationContext(), ViewActivity.class);
}
startActivity(intent);
그런데 직접 런처 아이콘을 터치해서 StartActivity가 실행되어 앱이 구동중일때는 알림이 오면 각각의 알림 마다 모두
정상적으로 실행이 되는데, 저 분기를 타서 StartActivity가 실행되어 앱이 구동중일때는
그 이후 클릭한 알림들이 반응이 없습니다.
디버깅을 해보니 DummyActivity 자체가 실행이 되지 않네요.
알림을 클릭해서 StartActivity를 통해 실행이 된 후, 다시 앱을 나가서 알림을 클릭하면 정상적으로 PendingIntent가
실행이 됩니다.
앱이 실행 안되어있는 상태에서 알림을 클릭하고 StartActivity를 통해 앱을 진입하면, 그 상태에서는 그 이후 알림을
클릭해서 PendingIntent가 실행되지 않는 현상입니다.
왜 이런 현상이 발생하는지 잘 떠오르지가 않는데 혹시 이런 현상에 대해 해결 방안을 아시는 분 계시면
도움 부탁드립니다.