繁体   English   中英

iOS Cordova Push插件-Coldstart崩溃应用程序

[英]IOS Cordova Push Plugin - Coldstart Crashes App

我正在使用Cordova Push插件: http : //ngcordova.com/docs/plugins/pushNotifications/

在Android平台上运行正常。 但是,对于IOS,我面临以下问题:我根据文档为'$ cordovaPush:notificationReceived'事件注册了侦听器,并提供了与上面链接中的文档相同的实现(为方便起见,请参见下文):

$rootScope.$on('$cordovaPush:notificationReceived', function(event, notification) {
  if (notification.alert) {
    navigator.notification.alert(notification.alert);
  }

  if (notification.sound) {
    var snd = new Media(event.sound);
    snd.play();
  }

  if (notification.badge) {
    $cordovaPush.setBadgeNumber(notification.badge).then(function(result) {
      // Success!
    }, function(err) {
      // An error occurred. Show a message to the user
    });
  }
});

有3种情况:1.应用程序在前台运行。 在这种情况下,即使通知到达(由日志语句确认),设备上也不会发生任何可见的动作。 我希望下面的两个语句能够执行,但不会执行。

navigator.notification.alert(notification.alert);
snd.play();
  1. 应用程序在后台运行。 在这种情况下,语句似乎按照预期的行为执行。

  2. 应用程序根本没有运行(冷启动)。 在这种情况下,会播放通知和声音,但是当用户单击通知时,该应用会打开并挂起/崩溃。

有人遇到过这些问题吗? 解决这些问题的最佳方法是什么? 这仅适用于IOS。

您使用的插件已弃用。

我以前也用过,有很多问题。

我建议使用插件: phonegap-plugin-push

易于安装,将解决您的问题

如@Nechemya Kanelsky所述,请使用更新版本的push插件,并且将处理场景1和2。 但随着该插件为好,第三个问题仍然存在,提到这里

您可以使用此处提到的第三期修复程序

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM