From ab5bf3b807e504a44d7c680adac38259edc17114 Mon Sep 17 00:00:00 2001 From: estevez-dev Date: Mon, 2 Sep 2019 21:21:38 +0300 Subject: [PATCH] WIP #49 Catch http errors inside location isolate --- lib/managers/location_manager.class.dart | 38 +++++++++++------------- 1 file changed, 17 insertions(+), 21 deletions(-) diff --git a/lib/managers/location_manager.class.dart b/lib/managers/location_manager.class.dart index 866fa20..aba9db2 100644 --- a/lib/managers/location_manager.class.dart +++ b/lib/managers/location_manager.class.dart @@ -16,26 +16,22 @@ class LocationManager { Geolocator().getCurrentPosition(desiredAccuracy: LocationAccuracy.medium).then((location) { Logger.d("[Location isolate #${Isolate.current.hashCode}] Got location: ${location.latitude} ${location.longitude}. Sending home..."); int battery = DateTime.now().hour; - try { - String url = "$httpWebHost/api/webhook/$webhookId"; - Map headers = {}; - headers["Content-Type"] = "application/json"; - var data = { - "type": "update_location", - "data": { - "gps": [location.latitude, location.longitude], - "gps_accuracy": location.accuracy, - "battery": battery - } - }; - http.post( - url, - headers: headers, - body: json.encode(data) - ); - } catch (e) { - print("[Location isolate #${Isolate.current.hashCode}] Error sending location: ${e.toString()}"); - } + String url = "$httpWebHost/api/webhook/$webhookId"; + Map headers = {}; + headers["Content-Type"] = "application/json"; + var data = { + "type": "update_location", + "data": { + "gps": [location.latitude, location.longitude], + "gps_accuracy": location.accuracy, + "battery": battery + } + }; + http.post( + url, + headers: headers, + body: json.encode(data) + ).catchError((e) => print("[Location isolate #${Isolate.current.hashCode}] Error sending data: ${e.toString()}")); }); } else { @@ -141,7 +137,7 @@ class LocationManager { ); Logger.d("[Location] ...done."); } else { - print("[Location] No webhook id. Aborting"); + Logger.d("[Location] No webhook id. Aborting"); } } else { Logger.d("[Location] Location tracking is disabled");