안녕하세요. Acdtivity 실행이 제가 원하고자 하는 방향으로 되지를 않아서 이렇게 질문을 드립니다.
우선 코드는 아래와 같습니다.
@Override
protected void onMessage(Context context, Intent intent) {
Intent notiIntent = new Intent(context, NotiContentsActivity.class);
notiIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
notiIntent.putExtra("type", type);
PendingIntent sender = PendingIntent.getActivity(context, 0, notiIntent, PendingIntent.FLAG_ONE_SHOT);
try {
sender.send();
} catch (CanceledException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
CGM으로 푸시를 받은 후 Activity(NotiContentsActivity.class)를 띄워서 처리하고자 합니다.
하지만 제가 의도한대로 동작을 하지 않는 경우가 있습니다.
앱이 실행되고 있지 않은 상태에서 처음 푸시를 받은 경우 제대로 Activity를 호출합니다.
호출 된 후 아무동작도 하지않고 슬립으로 빠질 때까지 기다린 후 다시 한번 푸시를 날리면 푸시는 오지만
Activity를 호출하지 못 합니다.
화면이 활성화 되어 있는 경우는 잘 동작하나 화면이 슬립이 빠진 후에만 이러한 현상을 보이네요.
intent생성 시 왠만한 flag를 다 사용해 보았고 intent를 final로도 해보았으며, PendingIntent Flag도 4가지 모두 사용해보았으나 2번째 푸시부터 Activity를 호출하지 못 합니다.
특별한 이유가 있는지..아니면 제가 간과하고 있는 부분이 있는지 궁금합니다.