2
バックグラウンドで場所が変更されると、サーバーの場所を更新したいと思います。私は、重要なロケーションの変更を受け取るたびに、バックグラウンドでロケーションを更新する安全な方法を望んでいます。ネットワーク通話を行うにはどうすればいいですか?アプリケーションがバックグラウンド状態にある場合は、取得ロケーションを取得したらバックグラウンドネットワークコールを行うにはどうすればよいですか?
func endBackgroundUpdateTask() {
UIApplication.shared.endBackgroundTask(self.backgroundUpdateTask)
self.backgroundUpdateTask = UIBackgroundTaskInvalid
}
func scheduledLocationManager(_ manager: APScheduledLocationManager, didUpdateLocations locations: [CLLocation]) {
print(locations.last?.description ?? "no location")
self.backgroundUpdateTask = UIApplication.shared.beginBackgroundTask(expirationHandler: {
Alamofire.request("https://testomkar.herokuapp.com/log", method: .post, parameters: ["log":locations.last?.description ?? "no location"]).validate().responseJSON(completionHandler: { (responce) in
self.endBackgroundUpdateTask()
})
})
}