在应用程序被杀死或处于后台时显示本地通知

时间:2018-06-28 20:05:53

标签: ios swift xcode notifications

我有一个HQ Answer机器人,它是iOS应用程序的形式。基本上,我已经完成了整个机器人程序,并且在HQ Trivia websocket打开后便可以运行,但是我在最后一步上遇到了问题,即以推送通知的形式从机器人程序中向用户发送最佳答案,因为当游戏直播且漫游器正在运行时,他们将使用HQ应用程序。在我的viewDidLoad中,我有以下代码:

override func viewDidLoad() {
    super.viewDidLoad()

    getSocketURL()

    let notificationCenter = NotificationCenter.default
    notificationCenter.addObserver(self, selector: #selector(appMovedToBackground), name: Notification.Name.UIApplicationWillResignActive, object: nil)

}

getSocketURL()检查游戏是否是直播的,如果可以运行,它可以运行机器人,但是我希望在用户杀死应用程序或它在后台时进行操作。

最后是机器人找到正确答案后应在本地发送通知的地方:

private func getMatches()
{
    let options = [answer1, answer2, answer3]
    AnswerController.answer(for: question, answers: options) { answer in

        print("Predicted correct answer: \(answer.correctAnswer)")
        print("-----")

        self.bestAnswer = answer.correctAnswer

        self.sendNotification(question: self.question, answer: "Best Answer: \(self.bestAnswer)") // Send the user a notification

        self.updateLabels()
    }
}

总而言之,我正在寻找一种方法,该方法可以使bot在游戏直播时运行,而无需用户打开应用程序并使其处于前台,因为它们将位于HQ应用程序中。有什么办法可以通过本地通知来执行此操作,如果没有必要使用Firebase之类的程序来执行此操作,那就是如果我仍然希望该漫游器在用户的手机上本地运行,是否需要采取任何步骤。

0 个答案:

没有答案
相关问题