アプリが開いていてもバックグラウンドで実行されていても、5秒ごとに呼び出すメソッドを取得しようとしています。そのため、AppDelegateでは、 5秒ごとにメソッドを呼び出して、タイマーを持っています。AppDelegateでインスタンスに送信されたセレクタが認識されない
var helloWorldTimer = Timer.scheduledTimer(timeInterval: 5.0, target: self, selector: #selector(sayHello), userInfo: nil, repeats: true)
@objc func sayHello()
{
print("hello World")
}
はしかし、私はこのエラーを取得する:
NSInvalidArgumentException', reason: '-[_SwiftValue sayHello]: unrecognized selector sent to instance
そしてメソッドが正しく参照されているので、私は、なぜ完全にわからないんだけど?なぜこのエラーが出るのか誰にも分かりますか?