2016-07-20 2 views
0

알림의 콘텐츠 의도로 수신자 활동을 설정하고 있습니다.TaskStackBuilder를 사용하여 푸시 알림 클릭

Intent clickIntent = new Intent(context, Receiver.class); 
      mBuilder.setContentIntent(PendingIntent.getActivity(context, 0, clickIntent, PendingIntent.FLAG_UPDATE_CURRENT)); 

Receiver 활동 내에서는 다음과 같은 방법으로 TaskStackBuilder를 사용하여 열려고하는 활동을 시작합니다.

Intent intent = new Intent(this, Class.forName(className)); 
     intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     TaskStackBuilder.create(this).addParentStack(Class.forName(className)).addNextIntent(intent).startActivities(); 

앱이 백그라운드에서 알림 클릭이 발생하면 ParentActivity가 다시 시작됩니다. 특히 장치가 유휴 상태로 되돌아 오는 경우. 어떤 도움이 필요합니까? 나는 이것에 머리를 부수고있어.

답변

0

Android 앱의 경우 androidManifest.xml 파일에도 android:launchMode을 선언해야합니다. Android documentation에서 설명하고있는 바와 같이

:

활동이 시작되는 방법에 대한 지시. 인 텐트를 처리하기 위해 활동이 호출 될 때 어떤 일이 발생해야 하는지를 결정하기 위해 Intent 개체의 활동 플래그 (FLAG_ACTIVITY_ * 상수)와 함께 작동하는 네 가지 모드가 있습니다.

그들은 다음과 같습니다

  • "표준"
  • "singleTop"
  • "singleTask"
  • "singleInstance"

기본 모드는 "표준"입니다.

이 게시물에 주어진 해결책은 resuming an activity from a notification 일 수도 있습니다.