私のアプリケーションでは、to-doオブジェクトの配列があります。そして、ある日の毎日、13 PMと言うと、to-doオブジェクトの配列を変更する必要があります。 毎日このイベントをトリガするためにどのような機能を使用できますか?特定の時刻に毎日特定の値をリセットする
0
A
答えて
2
アプリがフォアグラウンドにあるとき、特定の時間のしきい値が経過すると、タイマーを起動するように設定できます。 時間が経過してアプリがバックグラウンドにある場合は、しきい値を超えた場合にアプリの次回の起動を確認してから、その時点で修正を行うことができます。例えば
、あなたのAppDelegateでこれを追加するタイマーを追加する:
private var myTimer: Timer?
func applicationWillResignActive(_ application: UIApplication) {
myTimer?.invalidate()
}
func applicationDidBecomeActive(_ application: UIApplication) {
//Scheduling for 1 PM (13:00)
var dateComponents = Calendar.current.dateComponents([.minute, .hour, .month, .day, .year], from: Date())
dateComponents.hour = 13
dateComponents.minute = 00
dateComponents.timeZone = TimeZone.current
if let timerDate = Calendar.current.date(from: dateComponents) {
myTimer = Timer(fireAt: timerDate, interval: 0, target: self, selector: #selector(timerFired), userInfo: nil, repeats: false)
}
if let myTimer = myTimer {
RunLoop.current.add(myTimer, forMode: RunLoopMode.commonModes)
}
}
func timerFired() {
//Do you update here
}
あなたの修正が既に場合には、その日のために行われているかどうかをチェックするapplicationDidBecomeActive
方法で追加のチェックを追加することができますアプリがバックグラウンドまたは非アクティブになっている間は、しきい値は過ぎます。
+0
実際、あなたが言ったように、私はUserオブジェクトがUserDefaultsでアクセスされるたびにDateオブジェクトを設定しています。その後、私は、新しいアクセス日がuserDefaultsのlastDateと同じ日である場合にアプリケーションを再オープンするたびにチェックし、同じ日でないときにオブジェクトを実行するように変更します。今すぐうまくいく!! – Misha
関連する問題
- 1. 整数を特定の時刻に毎日リセットする
- 2. 毎日特定の時刻にカウンタを有効にする
- 3. 毎日特定の時刻にサービスを開始する
- 4. 特定の時刻に毎日コードを実行する - AlarmManager
- 5. 毎日特定の時刻にWindowsサービスを呼び出す
- 6. fecha.js - 日付/時刻、特定の時刻
- 7. 毎日スケジューリングtalend etlジョブを特定の時刻に
- 8. 特定の時刻に毎日デスクトップ通知を表示
- 9. 毎日特定の時刻にcordovaでローカル通知を設定する方法
- 10. アラームサービスを使用して毎日特定の時刻にブルートゥースをオフにする
- 11. 今日の特定の時刻にアラームを設定する
- 12. ionic v1で毎日特定の時刻に通知を送信する
- 13. PySide、Qdate;特定の時間に毎日特定の関数を実行する
- 14. タイムゾーンに従って特定の時刻に毎日実行されるRailsアクティブジョブ
- 15. Graphiteで毎日特定の時刻にデータポイントをフェッチできますか?
- 16. 特定の時刻にDataBind()
- 17. 特定の時刻から毎時1回Azure cron式
- 18. アプリが閉じていても特定の時刻に毎日特定の時刻にローカル通知をトリガーする
- 19. 1日の特定の時刻にウェブページを更新する
- 20. 当日の特定の時刻にローカル通知をスケジュールする
- 21. 特定の時刻に日付を変更するには
- 22. 毎日SMSに特定の時間を送信する
- 23. 毎日特定のGMT時間に機能を実行する
- 24. データベースのレコードの値を特定の日付と時刻に変更する
- 25. 毎週特定の日時に通知する
- 26. 毎日特定の時間InfluxDBに問い合わせする
- 27. 特定の時刻に投稿する
- 28. 特定の日付と時刻の通知をスケジュールする
- 29. 1日の特定の時刻から1日ごとのグループ
- 30. 特定の日付と時刻にトリガーを実行します
webservicesを使用している間にサーバー上で設定されたcronジョブを実行できます –
これまでのWebサービスは使用していません。インターネットに接続しなくても値をリセットしたいです。 – Misha
ok!私はiosの開発者ではありませんが、iosとcronの仕事に使用されるwebservicesに取り組んでいます。サーバーには、日付時刻のイベントをトリガーすることができます。 –