2017-06-07 14 views
1

私は15秒ごとにユーザープロファイルデータを取得するスケジューラーを持っています。私のアプリケーションが中断しているか、バックグラウンドでタイマーを無効にする必要がありますか?

class ProfileScheduler: NSObject { 

    private var _timer: Timer? 

    func start() { 
     _timer = Timer.scheduledTimer(timeInterval: 15, target: self, selector: #selector(self.fetchProfile), userInfo: nil, repeats: true) 
    } 

    func fetchProfile() { 
     print("Update........") 
     ProfileManager.getProfileData() 
    } 

} 

私はTimerたび(一時停止、背景)モードで自分のアプリケーションを無効にする必要がありますか?アプリが(アクティブ)になると復元します。

答えて

2

私のアプリケーションが(一時停止、バックグラウンド)モードで毎回無効にする必要がありますか?

はい。What to do When Your App is Interrupted Temporarilyを参照してください。タイマーやその他の定期的なタスクを停止する必要があることが説明されています。タイマーは動作するためにはアクティブなループが必要です。したがって、あなたのアプリが非アクティブになったときにタイマーを停止し、再びアクティブになったときにタイマーを再起動する必要があります。

関連する問題