diff --git a/buildozer.spec b/buildozer.spec index 6b4cc2c..ff23c26 100644 --- a/buildozer.spec +++ b/buildozer.spec @@ -28,7 +28,7 @@ source.include_exts = py,png,jpg,kv,atlas #source.exclude_patterns = license,images/*/*.jpg # (str) Application versioning (method 1) -version = 0.1 +version = 0.2 # (str) Application versioning (method 2) # version.regex = __version__ = ['"](.*)['"] diff --git a/flockompass.kv b/flockompass.kv index b5c3613..7619c47 100644 --- a/flockompass.kv +++ b/flockompass.kv @@ -157,7 +157,7 @@ TextInput: id: flock_server font_size: '15sp' - text: 'http://132.247.90.102' + text: 'http://flocker.mooo.com' multiline: False BackgroundLabel: text: "Dark theme" diff --git a/main.py b/main.py index 80534f7..e9c3ca6 100644 --- a/main.py +++ b/main.py @@ -79,16 +79,19 @@ class FlockompassApp(App): if path.isfile(pickle_path): with open(pickle_path, 'rb') as f: settings = pickle.load(f) + Logger.info('Loaded settings') else: settings = {'settings_smoothing': 0.88, 'settings_compass_update': 0.88, 'settings_theme': "dark", - 'settings_flock_server': 'http://132.247.90.102' + 'settings_flock_server': 'http://flocker.mooo.com' } with open(pickle_path, 'wb') as f: pickle.dump(settings, f) + Logger.info('Wrote default settings') + self.session_data.update(settings) if self.session_data['settings_theme'] == "dark": @@ -134,8 +137,7 @@ class FlockompassApp(App): self.compass_enable() self.session_data['dest_lat'] = self.ms.ids.centermark.lat self.session_data['dest_lon'] = self.ms.ids.centermark.lon - self.ms.ids.mapview.center_on(self.session_data['dest_lat'], - self.session_data['dest_lon']) + Clock.schedule_once(self.center_map_on_session, 0) self.flock_server_register() Clock.schedule_interval(self.flock, self.session_data.get('settings_update_freq', 10.0)) @@ -187,8 +189,10 @@ class FlockompassApp(App): self.session_data['dest_lat'] = self.gps_data['lat'] self.session_data['dest_lon'] = self.gps_data['lon'] - self.ms.ids.mapview.center_on(self.session_data['dest_lat'], - self.session_data['dest_lon']) + Clock.schedule_once(self.center_map_on_session, 0) + + # self.ms.ids.mapview.center_on(self.session_data['dest_lat'], + # self.session_data['dest_lon']) else: dest_distance = geodesic( (self.gps_data['lat'], self.gps_data['lon']), @@ -231,6 +235,11 @@ class FlockompassApp(App): self.gps_data['lon']) + def center_map_on_session(self, *args): + self.ms.ids.mapview.center_on(self.session_data['dest_lat'], + self.session_data['dest_lon']) + + def get_field(self, dt): """ get magnetic field for compass @@ -335,11 +344,13 @@ class FlockompassApp(App): 'dest_lat': self.session_data['dest_lat'], 'client_id': client_id}, timeout=0.5) - # TODO: check for response code, only proceed if 200 self.session_data['bike_id'] = r.json()['bike_id'] self.session_data['client_id'] = client_id Logger.info('registered! got bike_id: %s' % self.session_data['bike_id']) - self.flock_server_update() + self.flock_server_update() + except requests.exceptions.HTTPError as e: + status_code = e.response.status_code + Logger.info('http error', status_code) except requests.exceptions.Timeout: Logger.info('comm timeout while registering with flock server') except requests.exceptions.ConnectionError: