2017-04-19 18 views
2

IONIC 2アプリケーションを作成し、ionic.ioを使用してプッシュ通知を実装しています。私が実装する必要がIONIC 2プッシュ通知の処理

次の事は、私は「」の値と、ペイロード変数「postid」を送信していますようにアプリケーションは、通知のクリックに応答します方法です。それをクリックします -

1)アプリケーションが開いているとき、私は行くボタンをプッシュタイトルとメッセージとポップアップを表示したい:

アプリケーションが開いているときに、それが閉じているときに今、2つの状況があります詳細ページへ。

2)通知を受け取ったら、それをクリックするとアプリケーションが開き、ホームページが表示されず、postidパラメータで詳細ページに直接移動します。

マイコード:上記のコードで

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

が問題:

1)アプリケーションが閉じている - それは、Appを開きますが、何もしないが、私は、パラメータpostidを削除するときには、にナビゲートDetailsPageただし、パラメータではありません。

2)Appが開いているときに、アプリケーションが開いているときに何もしないので、これを行う方法がわからないとき。

ありがとうございます。

+0

解決しましたか? –

+0

はい、何をお探しですか? –

+0

appが閉じられているときpush.rx.notification()は呼び出されません。アプリケーションが閉じられると、アプリケーションは開きますが何もしません。 –

答えて

0

ここに私の問題を解決したコードがあります。

これで、必要に応じて動作しています。ペイロードがある場合はペイロードをチェックし、ペイロードがない場合はホームページに着信します。 Appが開いている場合は、ポップアップボックスが表示されます。

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(); 
       } 
      }); 

誰かを助けてくれることを願っています。

ありがとうございました

関連する問題