From 42ad669fca7ca0ed6d9251c918040f3791386355 Mon Sep 17 00:00:00 2001 From: Olivier Girondel Date: Sat, 28 Apr 2018 16:20:17 +0200 Subject: [PATCH] Tell if a location is a mock --- app/build.gradle | 12 ++++++------ .../main/java/org/traccar/client/DatabaseHelper.java | 5 ++++- app/src/main/java/org/traccar/client/Position.java | 11 +++++++++++ .../java/org/traccar/client/ProtocolFormatter.java | 4 ++++ build.gradle | 4 ++-- gradle/wrapper/gradle-wrapper.properties | 2 +- 6 files changed, 28 insertions(+), 10 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 326774c..b78d619 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -29,12 +29,12 @@ android { } dependencies { - compile 'com.android.support:design:27.1.0' - compile 'com.mapzen.android:lost:3.0.4' - testCompile 'junit:junit:4.12' - testCompile 'org.robolectric:robolectric:3.6.1' - googleCompile 'com.google.firebase:firebase-core:11.8.0' - googleCompile 'com.crashlytics.sdk.android:crashlytics:2.9.1' + implementation 'com.android.support:design:27.1.1' + implementation 'com.mapzen.android:lost:3.0.4' + testImplementation 'junit:junit:4.12' + testImplementation 'org.robolectric:robolectric:3.6.1' + googleImplementation 'com.google.firebase:firebase-core:15.0.0' + googleImplementation 'com.crashlytics.sdk.android:crashlytics:2.9.1' } if (getGradle().getStartParameter().getTaskRequests().toString().contains("Google")) { diff --git a/app/src/main/java/org/traccar/client/DatabaseHelper.java b/app/src/main/java/org/traccar/client/DatabaseHelper.java index afe6684..2d8c14d 100644 --- a/app/src/main/java/org/traccar/client/DatabaseHelper.java +++ b/app/src/main/java/org/traccar/client/DatabaseHelper.java @@ -80,7 +80,8 @@ public class DatabaseHelper extends SQLiteOpenHelper { "speed REAL," + "course REAL," + "accuracy REAL," + - "battery REAL)"); + "battery REAL," + + "mock INTEGER)"); } @Override @@ -100,6 +101,7 @@ public class DatabaseHelper extends SQLiteOpenHelper { values.put("course", position.getCourse()); values.put("accuracy", position.getAccuracy()); values.put("battery", position.getBattery()); + values.put("mock", position.getMock() ? 1 : 0); db.insertOrThrow("position", null, values); } @@ -133,6 +135,7 @@ public class DatabaseHelper extends SQLiteOpenHelper { position.setCourse(cursor.getDouble(cursor.getColumnIndex("course"))); position.setAccuracy(cursor.getDouble(cursor.getColumnIndex("accuracy"))); position.setBattery(cursor.getDouble(cursor.getColumnIndex("battery"))); + position.setMock(cursor.getInt(cursor.getColumnIndex("mock")) > 0); } else { return null; diff --git a/app/src/main/java/org/traccar/client/Position.java b/app/src/main/java/org/traccar/client/Position.java index 3e15e8c..834061b 100644 --- a/app/src/main/java/org/traccar/client/Position.java +++ b/app/src/main/java/org/traccar/client/Position.java @@ -37,6 +37,7 @@ public class Position { accuracy = location.getAccuracy(); } this.battery = battery; + this.mock = location.isFromMockProvider(); } private long id; @@ -139,4 +140,14 @@ public class Position { this.battery = battery; } + private boolean mock; + + public boolean getMock() { + return mock; + } + + public void setMock(boolean mock) { + this.mock = mock; + } + } diff --git a/app/src/main/java/org/traccar/client/ProtocolFormatter.java b/app/src/main/java/org/traccar/client/ProtocolFormatter.java index 32a38cc..2a58531 100644 --- a/app/src/main/java/org/traccar/client/ProtocolFormatter.java +++ b/app/src/main/java/org/traccar/client/ProtocolFormatter.java @@ -36,6 +36,10 @@ public class ProtocolFormatter { .appendQueryParameter("accuracy", String.valueOf(position.getAccuracy())) .appendQueryParameter("batt", String.valueOf(position.getBattery())); + if (position.getMock()) { + builder.appendQueryParameter("mock", String.valueOf(position.getMock())); + } + if (alarm != null) { builder.appendQueryParameter("alarm", alarm); } diff --git a/build.gradle b/build.gradle index 48c8102..ba25c73 100644 --- a/build.gradle +++ b/build.gradle @@ -5,8 +5,8 @@ buildscript { maven { url 'https://maven.fabric.io/public' } } dependencies { - classpath 'com.android.tools.build:gradle:3.0.1' - classpath 'com.google.gms:google-services:3.1.1' + classpath 'com.android.tools.build:gradle:3.1.2' + classpath 'com.google.gms:google-services:3.2.1' classpath 'io.fabric.tools:gradle:1.25.1' } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 3f0f9be..8941bfb 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.5.1-all.zip