【问题标题】:SIGABRT - Targeting Parse Push NotificationsSIGABRT - 针对解析推送通知
【发布时间】:2016-01-27 02:01:15
【问题描述】:

我正在尝试保存 UISwitch 结果并使用它们来填充 Parse.com 推送通知的“通道”。我遵循了 Parse Guide,但每次尝试单击保存开关值的保存按钮时,我都会得到一个 SIGABRT。非常感谢任何帮助

@IBAction func Save(sender: AnyObject) {

    if Athletics.on{
        let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.addUniqueObject("Athletics", forKey: "channels")
        currentInstallation.saveInBackground()
    }else{let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.removeObject("Athletics", forKey: "channels")
        currentInstallation.saveInBackground()
    }


    if Academics.on{
        let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.addUniqueObject("Academics", forKey: "channels")
        currentInstallation.saveInBackground()
    }else{let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.removeObject("Academics", forKey: "channels")
        currentInstallation.saveInBackground()
    }

    if LinkCrew.on{
        let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.addUniqueObject("LinkCrew", forKey: "channels")
        currentInstallation.saveInBackground()
    }else{let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.removeObject("LinkCrew", forKey: "channels")
        currentInstallation.saveInBackground()
    }

    if Events.on{
        let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.addUniqueObject("Events", forKey: "channels")
        currentInstallation.saveInBackground()
    }else{let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.removeObject("Events", forKey: "channels")
        currentInstallation.saveInBackground()
    }

    if Parents.on{
        let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.addUniqueObject("Parents", forKey: "channels")
        currentInstallation.saveInBackground()
    }else{let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.removeObject("Parents", forKey: "channels")
        currentInstallation.saveInBackground()
    }

    if Day1Day2.on{
        let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.addUniqueObject("Day1Day2", forKey: "channels")
        currentInstallation.saveInBackground()
    }else{let currentInstallation = PFInstallation.currentInstallation()
        currentInstallation.removeObject("Day1Day2", forKey: "channels")
        currentInstallation.saveInBackground()
    }


}

【问题讨论】:

  • 要识别哪个语句产生了错误,设置一个异常断点:在Xcode的断点导航器中,单击左下角的加号并选择“添加异常断点...”,然后按回车键。运行您的应用程序,它会在有问题的指令处停止。
  • 为什么不更新所有频道然后在最后保存一次...

标签: ios swift parse-platform push-notification targeting


【解决方案1】:

问题不在于您的代码,而在于您的 main.storyboard。当故事板元素连接到不再存在的其他元素或插座时,SIGABRT 错误会显示。

修复此错误:

  1. 转到您的 main.storyboard
  2. 点击其中一个元素(例如 UILabel 等)
  3. 单击连接检查器(看起来像圆圈中的箭头)
  4. 查看它是否连接到不存在的东西并删除它/它们
  5. 对所有元素执行步骤 2 到 4

【讨论】:

    猜你喜欢
    • 2013-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多