2016-12-20 12 views
0

私は、このようなラインでバックグラウンドタスクをスケジュールしようとしている:WKExtension.scheduleBackgroundRefreshがscheduledCompletionハンドラを呼び出すことになっていますか?

WKExtension.shared().scheduleBackgroundRefresh(withPreferredDate: Date(timeIntervalSinceNow: TimeInterval(5) * 60), userInfo: nil, scheduledCompletion: self.scheduledCompletion) 

func scheduledCompletion(error: Error?) { 
     if error == nil { print("successfully scheduled application background refresh") } 
     else { print("error scheduling background refresh, error: \(error)") } 
} 

documentationによると:

scheduledCompletion後にシステムによって呼び出されるブロック バックグラウンドアプリの更新タスクが完了しました。

しかし、バックグラウンドリフレッシュタスクが予定の後にまっすぐに呼び出されています。です。バックグラウンドリフレッシュタスクが正しい時刻に呼び出されています。それ以降、scheduledCompletionが呼び出されていません。

ドキュメントのエラー、WatchKitのバグ、または何か間違っていますか?

答えて

1

ドキュメントの説明にもかかわらず、scheduledCompletionはタスクがスケジュールされるときになります。それはWWDC16の間に言及されましたKeeping Your Watch App Up to Date 11:23でのセッション:

enter image description here

関連する問題