2017-04-19 2 views
2

Ionic 2 앱을 생성했으며 ionic.io를 사용하여 PUSH 알림을 구현했으며 작동 중입니다. 내가 구현해야IONIC 2 푸시 알림 처리

다음 것은 내가 '1234의 가치와 페이로드 변수 "postid"를 보내고 같은 응용 프로그램은 알림에서 클릭에 응답하는 방법이다. - 그것을 클릭합니다 응용 프로그램이 열려있는 경우

1), I는 이동 버튼을 누름 제목과 메시지 팝업을 보여주고 싶은 :이 닫힐 때 응용 프로그램이 열려있을 때

지금이 개 사정이 세부 정보 페이지로 이동하십시오.

2) 알림을 받으면 응용 프로그램을 열면 홈 페이지가 표시되지 않고 postid 매개 변수가있는 세부 정보 페이지로 바로 이동합니다.

내 코드 : 위의 코드와

this.push.rx.notification() 
    .subscribe((msg) => {   
    this.appCtrl.getRootNav().push(DetailsPage, {postid: 203146}); 
}); 

문제 :

1) 응용 프로그램이 닫혀 -이 앱을 엽니 다하지만 아무것도하지 않고 있지만 매개 변수를 postid를 제거 할 때로 이동 DetailsPage, 그러나 매개 변수가 없습니다.

2) 앱을 열 때 앱을 열 때 아무 일도하지 않으므로이 방법을 잘 모르는 경우.

감사합니다.

+0

해결 했습니까? –

+0

예, 무엇을 찾으십니까? –

+0

앱이 닫힐 때 push.rx.notification()이 호출되지 않습니다. 앱이 닫히면 앱이 열리지 만 아무 것도하지 않습니다. –

답변

0

내 문제를 해결 한 코드는 다음과 같습니다.

이제 원하는대로 작동합니다. 페이로드가 있으면 페이로드를 확인하고 그렇지 않으면 홈 페이지에 착륙합니다. 앱이 열려 있으면 팝업 상자가 표시됩니다.

this.push.rx.notification() 
       .subscribe((msg) => { 
       let pushPayload = msg.payload; 
       if(pushPayload == undefined) 
        return; 

       if (msg.app.asleep || msg.app.closed) { 
        if(pushPayload['postid'] !== undefined) { 
         this.appCtrl.getRootNav().push(DetailPage, {id: msg.payload['postid']});       
        } 
       } else { 
        let confirm = this.alertCtrl.create({ 
         title: msg.title, 
         message: msg.text, 
         buttons: [ 
         { 
          text: 'Check Later', 
          handler:() => { 
          console.log('Disagree clicked'); 
          } 
         }, 
         { 
          text: 'Check Now', 
          handler:() => { 
          if(pushPayload['postid'] !== undefined) { 
           this.appCtrl.getRootNav().push(DetailPage, {id: msg.payload['postid']});   

          } 
          } 
         } 
         ] 
        }); 
        confirm.present(); 
       } 
      }); 

누군가 도움이되기를 바랍니다.

감사합니다.

관련 문제