2016-10-17 9 views
1

私はアンドロイド用に私のアプリでイオンプッシュ通知を実装しました。プッシュ通知は、アプリが実行されていないとき(バックグラウンドでも起動していなくても)はうまくいきますが、ステータスバーの通知(通知バー)やバックグラウンドで動作しているときや起動していないときの振動はありません。Ionic PushNotification

$ionicPlatform.ready(function() { 

    localStorage.myPush = ''; // I use a localStorage variable to persist the token 
    var tokenID = ''; 
    $cordovaPushV5.initialize( // important to initialize with the multidevice structure !! 
     { 
      android: { 
       senderID: "457390407561" 
      }, 
      ios: { 
       alert: 'true', 
       badge: true, 
       sound: 'false', 
       clearBadge: true 
      }, 
      windows: {} 
     } 
    ).then(function (result) { 
     $cordovaPushV5.onNotification(); 
     $cordovaPushV5.onError(); 
     $cordovaPushV5.register().then(function (resultreg) { 
      localStorage.myPush = resultreg; 
      console.log(localStorage); 
     }, function (err) { 
      // handle error 
     }); 
    }); 

    $rootScope.$on('$cordovaPushV5:notificationReceived', function(event, data){ 
     // data.message, 
     // data.title, 
     // data.count, 
     // data.sound, 
     // data.image, 
     // data.additionalData 
     console.log("notification received"); 
     console.log(event); 
     console.log(data); 
     console.log(data.message); 
     console.log(data.title); 
     console.log(data.count); 
     console.log(data.sound); 

     if (data.additionalData.foreground === true) { 
     // do something if the app is in foreground while receiving to push - handle in app push handling 
     console.log("notification received in foreground"); 
     } 
     else { 
     // handle push messages while app is in background or not started 
     console.log("notification received in background"); 
     $state.go('app.orderlist'); 
     } 

    }); 
    // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard 
    // for form inputs) 
    if (window.cordova && window.cordova.plugins.Keyboard) { 
     cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); 
     cordova.plugins.Keyboard.disableScroll(true); 
    } 
    if (window.StatusBar) { 
     // org.apache.cordova.statusbar required 
     StatusBar.styleDefault(); 
    } 
    }); 

アドバイスやご提案はありますか?

ありがとうございます。

答えて

2

あなたは

$cordovaPushV5.initialize( // important to initialize with the multidevice structure !! 
     { 
      android: { 
       senderID: "xxxxxxxxx", 
       forceShow: true 
      }, 
      ios: { 
       alert: 'true', 
       badge: true, 
       sound: 'false', 
       clearBadge: true, 
      }, 
      windows: {} 
     } 
    ) 
以下のように

forceShow: true 

を追加することができます

関連する問題