public void OnLocationUpdate(Location loc) { System.out.println("LOCATION UPDATE IN RACEACTIVITYYYYY!!!!!"); Utilities.LogDebug("LOCATION UPDATE IN RACEACTIVITYYYYY!!!!!"); // send location to webserver raceState.sendUpdate(raceId, loc.getLongitude(), loc.getLatitude(), loc.getAltitude()); // retrieve update from webserver raceState.receiveUpdate(); }
private void StartAndBindService() { Utilities.LogDebug("StartAndBindService FROM RACEACTIVITY - binding now"); serviceIntent = new Intent(this, GpsLoggingService.class); // Start the service in case it isn't already running startService(serviceIntent); // Now bind to service bindService(serviceIntent, gpsServiceConnection, Context.BIND_AUTO_CREATE); Session.setRaceBoundToService(true); }
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_race_main); // getActionBar().setDisplayHomeAsUpEnabled(true); // default settings Utilities.PopulateAppSettings(getApplicationContext()); // get Extras Intent intent = getIntent(); isAlone = intent.getBooleanExtra("alone", false); raceId = intent.getIntExtra("raceid", IDNOTSET); selectedUsers = intent.getParcelableArrayListExtra("users"); // init state if (isAlone) { raceState = new AloneRace(); } else { raceState = new WithFriendsRace(); } // set preferences: SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); Editor editor = prefs.edit(); editor.putString("time_before_logging", "15"); editor.commit(); AppSettings.setMinimumSeconds(15); // start service if not started and bind StartAndBindService(); // define the order of colors colors = new ArrayList<Integer>(); colors.add(Color.CYAN); colors.add(Color.BLUE); colors.add(Color.GREEN); colors.add(Color.MAGENTA); colors.add(Color.RED); initDrawings(); drawCircle(); refreshPaint(); }
@Override protected RaceStatisticsListDTO doInBackground(Void... params) { try { final String url = getString(R.string.base_uri) + Constants.updateracestatus; // Set the Accept header for "application/json" or "application/xml" HttpHeaders requestHeaders = new HttpHeaders(); List<MediaType> acceptableMediaTypes = new ArrayList<MediaType>(); acceptableMediaTypes.add(MediaType.APPLICATION_XML); requestHeaders.setAccept(acceptableMediaTypes); String username = AppSettings.getServer_username(); String password = AppSettings.getServer_password(); MultiValueMap<String, String> requestData = new LinkedMultiValueMap<String, String>(); requestData.add("username", username); requestData.add("password", password); requestData.add("raceid", "" + raceId); // Populate the headers in an HttpEntity object to use for the request HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<MultiValueMap<String, String>>(requestData, requestHeaders); // Create a new RestTemplate instance RestTemplate restTemplate = new RestTemplate(); // Perform the HTTP GET request ResponseEntity<RaceStatisticsListDTO> responseEntity = restTemplate.exchange(url, HttpMethod.POST, requestEntity, RaceStatisticsListDTO.class); // Return the state from the ResponseEntity RaceStatisticsListDTO liste = responseEntity.getBody(); return liste; } catch (Exception e) { Utilities.LogError("receiveUpdate", e); } return null; }
@Override protected String doInBackground(Void... params) { try { final String url = getString(R.string.base_uri) + Constants.addracelocation; // Set the Accept header for "application/json" or "application/xml" HttpHeaders requestHeaders = new HttpHeaders(); List<MediaType> acceptableMediaTypes = new ArrayList<MediaType>(); acceptableMediaTypes.add(MediaType.MULTIPART_FORM_DATA); requestHeaders.setAccept(acceptableMediaTypes); String username = AppSettings.getServer_username(); String password = AppSettings.getServer_password(); MultiValueMap<String, String> requestData = new LinkedMultiValueMap<String, String>(); requestData.add("username", username); requestData.add("password", password); requestData.add("raceid", "" + raceId); requestData.add("longitude", "" + longitude); requestData.add("latitude", "" + latitude); requestData.add("altitude", "" + altitude); // Populate the headers in an HttpEntity object to use for the request HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<MultiValueMap<String, String>>(requestData, requestHeaders); // Create a new RestTemplate instance RestTemplate restTemplate = new RestTemplate(); // Perform the HTTP GET request ResponseEntity<String> responseEntity = restTemplate.exchange(url, HttpMethod.POST, requestEntity, String.class); return responseEntity.getBody(); } catch (Exception e) { Utilities.LogError("sending location infos", e); } return null; }