From 2dd8f75822befc78a1e29dcb6e513c216afdde31 Mon Sep 17 00:00:00 2001 From: chteufleur Date: Thu, 4 Oct 2018 16:30:13 +0200 Subject: [PATCH] Reorganization of ServiceGps code. --- .../mytrackingdog/services/IServiceGps.java | 8 -- .../mytrackingdog/services/ServiceGps.java | 124 ++++++++++-------- 2 files changed, 67 insertions(+), 65 deletions(-) delete mode 100644 app/src/main/java/fr/chteufleur/mytrackingdog/services/IServiceGps.java diff --git a/app/src/main/java/fr/chteufleur/mytrackingdog/services/IServiceGps.java b/app/src/main/java/fr/chteufleur/mytrackingdog/services/IServiceGps.java deleted file mode 100644 index 2f56aeb..0000000 --- a/app/src/main/java/fr/chteufleur/mytrackingdog/services/IServiceGps.java +++ /dev/null @@ -1,8 +0,0 @@ -package fr.chteufleur.mytrackingdog.services; - -public interface IServiceGps { - - public void start(); - public void stop(); - -} diff --git a/app/src/main/java/fr/chteufleur/mytrackingdog/services/ServiceGps.java b/app/src/main/java/fr/chteufleur/mytrackingdog/services/ServiceGps.java index 82f7d05..d91e151 100644 --- a/app/src/main/java/fr/chteufleur/mytrackingdog/services/ServiceGps.java +++ b/app/src/main/java/fr/chteufleur/mytrackingdog/services/ServiceGps.java @@ -31,7 +31,7 @@ import fr.chteufleur.mytrackingdog.models.beans.MyLocationArray; import fr.chteufleur.mytrackingdog.models.beans.TraceLocation; import fr.chteufleur.mytrackingdog.models.beans.WayPointLocation; -public class ServiceGps extends Observable implements IServiceGps, LocationListener { +public class ServiceGps extends Observable implements LocationListener { private static final String TAG = ServiceGps.class.getName(); public static final String NOTIF_NEW_LOCATION = ServiceGps.class.getName()+".newlocation"; @@ -67,6 +67,24 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe return currentLocation; } + public void start() { + try { +// if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { + this.locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0, this); + Log.i(TAG, "Start location"); +// } else { +// Log.i(TAG, "Start location failed (provider not enabled)"); +// } + } catch (SecurityException ex) { + Log.e(TAG, "Location permission is not activated.", ex); + } + } + + public void stop() { + this.locationManager.removeUpdates(this); + Log.i(TAG, "Stop location"); + } + public float getOrientation(int deviceOrientation) { float ret = -1; if (currentLocation != null && currentLocation.getSpeed() >= 0.01) { @@ -86,26 +104,7 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe return ret; } - @Override - public void start() { - try { -// if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { - this.locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0, this); - Log.i(TAG, "Start location"); -// } else { -// Log.i(TAG, "Start location failed (provider not enabled)"); -// } - } catch (SecurityException ex) { - Log.e(TAG, "Location permission is not activated.", ex); - } - } - - @Override - public void stop() { - this.locationManager.removeUpdates(this); - Log.i(TAG, "Stop location"); - } - + // private final Vibrator vibrator; private boolean vibrationNearObjectEnabled = false; private boolean nearObjectVibration = false; @@ -123,9 +122,18 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe return this.vibrationNearObjectEnabled; } - public void addPoint(MyLocation location) { - traces.addCurrentPoint(location); + private void vibrate(int timeVibrationMs) { + if (this.vibrator != null) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + this.vibrator.vibrate(VibrationEffect.createOneShot(timeVibrationMs, VibrationEffect.DEFAULT_AMPLITUDE)); + } else { + this.vibrator.vibrate(timeVibrationMs); + } + } } + // + + // @Override public void onLocationChanged(Location location) { Log.i(TAG, "onLocationChanged"); @@ -145,16 +153,6 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe } } - private void vibrate(int timeVibrationMs) { - if (this.vibrator != null) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { - this.vibrator.vibrate(VibrationEffect.createOneShot(timeVibrationMs, VibrationEffect.DEFAULT_AMPLITUDE)); - } else { - this.vibrator.vibrate(timeVibrationMs); - } - } - } - @Override public void onStatusChanged(String s, int i, Bundle bundle) { Log.i(TAG, "onStatusChanged("+s+", "+i+", null)"); @@ -183,7 +181,10 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe stop(); } } + // + // + // public void toggleTraceurActivation() { traces.toggleTraceurActivation(); if (!isTraceurActivated()) { @@ -203,7 +204,8 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe public boolean isDogActivated() { return traces.isDogActivated(); } - + // + // public WayPointLocation addPointObjectTrail() { return addPointObjectTrail(currentLocation); } @@ -227,33 +229,14 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe return wpl; } - public MyLocationArray getListGeoPointTraceur() { - return traces.getListPointTraceur(); - } - public MyLocationArray getListGeoPointDog() { - return traces.getListPointDog(); - } public MyLocationArray getListGeoPointObjectsTrail() { return traces.getListPointObjectsTrail(); } public MyLocationArray getListGeoPointObjectsDog() { return traces.getListPointObjectsDog(); } - public WayPointLocation getPointTrail(double lat, double lon) { - return traces.getPointObjectTrail(lat, lon); - } - public WayPointLocation getPointDog(double lat, double lon) { - return traces.getPointObjectDog(lat, lon); - } - public boolean isNearObjects() { - return !foundNearObjects(20).isEmpty(); - } - public List foundNearObjects() { - return foundNearObjects(10); - } - - public List foundNearObjects(int distance) { + private List foundNearObjects(int distance) { List ret = new ArrayList<>(); MyLocation curLoc = currentLocation; for (MyLocation ml: getListGeoPointObjectsTrail()) { @@ -263,8 +246,34 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe } return ret; } + private boolean isNearObjects() { + return !foundNearObjects(20).isEmpty(); + } + public List foundNearObjects() { + return foundNearObjects(10); + } + // + // + public void addPoint(MyLocation location) { + traces.addCurrentPoint(location); + } + public MyLocationArray getListGeoPointTraceur() { + return traces.getListPointTraceur(); + } + public MyLocationArray getListGeoPointDog() { + return traces.getListPointDog(); + } + public WayPointLocation getPointTrail(double lat, double lon) { + return traces.getPointObjectTrail(lat, lon); + } + public WayPointLocation getPointDog(double lat, double lon) { + return traces.getPointObjectDog(lat, lon); + } + // + // - public String getFileName(String prefix) { + // + private String getFileName(String prefix) { SimpleDateFormat formater = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss"); String date = formater.format(new Date()); return Environment.getExternalStorageDirectory().getAbsolutePath() + "/" @@ -272,7 +281,7 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe + ".gpx"; } - public boolean exportDogTraceToGpx() { + private boolean exportDogTraceToGpx() { File file = new File(getFileName(Gpx.DOG_TRACE_NAME)); ExportGpx exportGpx = new ExportGpx(file, Gpx.DOG_TRACE_NAME); exportGpx.setObjects(traces.getListPointObjectsDog()); @@ -280,7 +289,7 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe return exportGpx.export(); } - public boolean exportTrailTraceToGpx() { + private boolean exportTrailTraceToGpx() { File file = new File(getFileName(Gpx.TRAIL_TRACE_NAME)); ExportGpx exportGpx = new ExportGpx(file, Gpx.TRAIL_TRACE_NAME); exportGpx.setObjects(traces.getListPointObjectsTrail()); @@ -323,4 +332,5 @@ public class ServiceGps extends Observable implements IServiceGps, LocationListe e.printStackTrace(); } } + // }