Push-уведомление Ionic App Onesignal не может перенаправить на определенную страницу

#angularjs #ionic-framework #onesignal

#angularjs #ionic-framework #onesignal

Вопрос:

Я пытаюсь перенаправить на конкретную страницу вакансии, когда появляется новый кандидат.

Вот код:

 app.run(function($ionicPlatform, $location) {
  $ionicPlatform.ready(function() {
    if (ionic.Platform.isWebView()) {    
      window.plugins.OneSignal
      .startInit("xxxxxxxxxxxxxx", "xxxxxxxxxxxx")
      .handleNotificationReceived(function(jsonData) {
        console.log("/app/upcoming/"   jsonData.payload.additionalData.url);
        $location.path("/app/upcoming/"   jsonData.payload.additionalData.url);
      })
      .endInit();
    }
  

Консоль показывает правильный адрес, но он не перенаправляет и не содержит ошибок.

Ответ №1:

Для Ionic вам нужно будет использовать $state.go для перенаправления пользователя на другую страницу в вашем приложении.

 var notificationOpenedCallback = function(result) {
  var data = result.notification.payload.additionalData;
  if (data amp;amp; data.targetUrl) {
    var state = $injector.get($state);
    state.go(data.targetUrl);
  }
};

window.plugins.OneSignal
  .startInit("YOUR_APPID", "YOUR_GOOGLE_PROJECT_NUMBER_IF_ANDROID")
  .handleNotificationOpened(notificationOpenedCallback)
  .endInit();