Refactor to androidx, add pref to switch between wifi and wifi ftm
This commit is contained in:
BIN
.idea/caches/build_file_checksums.ser
generated
BIN
.idea/caches/build_file_checksums.ser
generated
Binary file not shown.
BIN
.idea/caches/gradle_models.ser
generated
BIN
.idea/caches/gradle_models.ser
generated
Binary file not shown.
@@ -21,13 +21,14 @@ android {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'com.android.support:design:28.0.0'
|
||||
implementation 'com.google.android.material:material:1.0.0'
|
||||
implementation fileTree(include: ['*.jar'], dir: 'libs')
|
||||
testImplementation 'junit:junit:4.12'
|
||||
implementation 'com.android.support:appcompat-v7:28.0.0'
|
||||
implementation 'androidx.appcompat:appcompat:1.0.0'
|
||||
implementation 'com.google.android.gms:play-services:12.0.1'
|
||||
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
|
||||
implementation 'org.apmem.tools:layouts:1.10@aar'
|
||||
implementation 'androidx.preference:preference:1.0.0'
|
||||
//compile 'com.google.android.support:wearable:1.3.0'
|
||||
//compile 'com.google.android.gms:play-services-wearable:8.4.0'
|
||||
//provided 'com.google.android.wearable:wearable:1.0.0'
|
||||
|
||||
@@ -12,7 +12,7 @@ import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.SystemClock;
|
||||
import android.preference.PreferenceManager;
|
||||
import android.support.v4.app.ActivityCompat;
|
||||
import androidx.core.app.ActivityCompat;
|
||||
//import android.support.wearable.activity.WearableActivity;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
@@ -35,7 +35,6 @@ import java.util.Set;
|
||||
import de.fhws.indoor.sensorreadout.sensors.GpsNew;
|
||||
import de.fhws.indoor.sensorreadout.sensors.GroundTruth;
|
||||
import de.fhws.indoor.sensorreadout.sensors.Logger;
|
||||
import de.fhws.indoor.sensorreadout.sensors.LoggerRAM;
|
||||
import de.fhws.indoor.sensorreadout.sensors.PedestrianActivity;
|
||||
import de.fhws.indoor.sensorreadout.sensors.PedestrianActivityButton;
|
||||
import de.fhws.indoor.sensorreadout.sensors.PhoneSensors;
|
||||
@@ -445,6 +444,7 @@ public class MainActivity extends Activity {
|
||||
});
|
||||
}
|
||||
if(activeSensors.contains("GPS")) {
|
||||
Log.i("Sensors", "Using GPS");
|
||||
//log gps using sensor number 16
|
||||
final GpsNew gps = new GpsNew(this);
|
||||
sensors.add(gps);
|
||||
@@ -454,25 +454,29 @@ public class MainActivity extends Activity {
|
||||
});
|
||||
}
|
||||
if(activeSensors.contains("WIFI")) {
|
||||
// log wifi using sensor number 8
|
||||
final WiFi wifi = new WiFi(this);
|
||||
sensors.add(wifi);
|
||||
wifi.setListener(new mySensor.SensorListener() {
|
||||
@Override public void onData(final long timestamp, final String csv) { add(SensorType.WIFI, csv, timestamp); }
|
||||
@Override public void onData(final SensorType id, final long timestamp, final String csv) {return; }
|
||||
});
|
||||
boolean useWifiFtm = preferences.getBoolean("prefUseWifiFTM", false);
|
||||
if(useWifiFtm && WiFiRTT.isSupported()) {
|
||||
Log.i("Sensors", "Using Wifi[FTM]");
|
||||
// log wifi RTT using sensor number 17
|
||||
final WiFiRTT wifirtt = new WiFiRTT(this);
|
||||
sensors.add(wifirtt);
|
||||
wifirtt.setListener(new mySensor.SensorListener() {
|
||||
@Override public void onData(final long timestamp, final String csv) { add(SensorType.WIFIRTT, csv, timestamp); }
|
||||
@Override public void onData(final SensorType id, final long timestamp, final String csv) { add(SensorType.WIFIRTT, csv, timestamp); }
|
||||
});
|
||||
} else {
|
||||
Log.i("Sensors", "Using Wifi");
|
||||
// log wifi using sensor number 8
|
||||
final WiFi wifi = new WiFi(this);
|
||||
sensors.add(wifi);
|
||||
wifi.setListener(new mySensor.SensorListener() {
|
||||
@Override public void onData(final long timestamp, final String csv) { add(SensorType.WIFI, csv, timestamp); }
|
||||
@Override public void onData(final SensorType id, final long timestamp, final String csv) {return; }
|
||||
});
|
||||
}
|
||||
}
|
||||
// if(activeSensors.contains("WIFI")) {
|
||||
// // log wifi RTT using sensor number 17
|
||||
// final WiFiRTT wifirtt = new WiFiRTT(this);
|
||||
// sensors.add(wifirtt);
|
||||
// wifirtt.setListener(new mySensor.SensorListener() {
|
||||
// @Override public void onData(final long timestamp, final String csv) { add(SensorType.WIFIRTT, csv, timestamp); }
|
||||
// @Override public void onData(final SensorType id, final long timestamp, final String csv) { add(SensorType.WIFIRTT, csv, timestamp); }
|
||||
// });
|
||||
//
|
||||
// }
|
||||
if(activeSensors.contains("BLUETOOTH")) {
|
||||
Log.i("Sensors", "Using Bluetooth");
|
||||
// bluetooth permission
|
||||
if(ActivityCompat.shouldShowRequestPermissionRationale(this,
|
||||
Manifest.permission.ACCESS_FINE_LOCATION)) {
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package de.fhws.indoor.sensorreadout;
|
||||
|
||||
import android.preference.PreferenceManager;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import android.os.Bundle;
|
||||
|
||||
public class SettingsActivity extends AppCompatActivity {
|
||||
@@ -9,6 +8,10 @@ public class SettingsActivity extends AppCompatActivity {
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
getFragmentManager().beginTransaction().replace(android.R.id.content, new SettingsFragment()).commit();
|
||||
getSupportFragmentManager()
|
||||
.beginTransaction()
|
||||
.replace(android.R.id.content, new SettingsFragment())
|
||||
.commit();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,16 +1,21 @@
|
||||
package de.fhws.indoor.sensorreadout;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.preference.PreferenceFragment;
|
||||
import android.support.annotation.Nullable;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.preference.PreferenceFragmentCompat;
|
||||
import androidx.preference.SwitchPreferenceCompat;
|
||||
|
||||
public class SettingsFragment extends PreferenceFragment {
|
||||
import de.fhws.indoor.sensorreadout.sensors.WiFiRTT;
|
||||
|
||||
public class SettingsFragment extends PreferenceFragmentCompat {
|
||||
|
||||
@Override
|
||||
public void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
addPreferencesFromResource(R.xml.preferences);
|
||||
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
|
||||
setPreferencesFromResource(R.xml.preferences, rootKey);
|
||||
if(!WiFiRTT.isSupported()) {
|
||||
SwitchPreferenceCompat useFtmPreference = (SwitchPreferenceCompat)findPreference("prefUseWifiFTM");
|
||||
useFtmPreference.setEnabled(false);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ import android.location.LocationListener;
|
||||
import android.location.LocationManager;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
import androidx.core.content.ContextCompat;
|
||||
|
||||
/**
|
||||
* Created by student on 20.03.17.
|
||||
|
||||
@@ -5,11 +5,10 @@ import android.app.Activity;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.location.Location;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v4.app.ActivityCompat;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.core.app.ActivityCompat;
|
||||
import android.util.Log;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.google.android.gms.common.ConnectionResult;
|
||||
import com.google.android.gms.common.api.GoogleApiClient;
|
||||
@@ -22,8 +21,6 @@ import com.google.android.gms.location.LocationServices;
|
||||
import java.text.DateFormat;
|
||||
import java.util.Date;
|
||||
|
||||
import de.fhws.indoor.sensorreadout.R;
|
||||
|
||||
import static android.content.ContentValues.TAG;
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
package de.fhws.indoor.sensorreadout.sensors;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.SystemClock;
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
import android.util.Log;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
@@ -2,7 +2,7 @@ package de.fhws.indoor.sensorreadout.sensors;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.SystemClock;
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
import android.util.Log;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
@@ -2,7 +2,7 @@ package de.fhws.indoor.sensorreadout.sensors;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.SystemClock;
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
import android.util.Log;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
@@ -2,8 +2,8 @@ package de.fhws.indoor.sensorreadout.sensors;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
import android.support.annotation.DrawableRes;
|
||||
import android.view.View;
|
||||
import androidx.annotation.DrawableRes;
|
||||
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
@@ -1,17 +1,14 @@
|
||||
package de.fhws.indoor.sensorreadout.sensors;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.SystemClock;
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
import android.util.Log;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.util.PriorityQueue;
|
||||
import java.util.concurrent.ArrayBlockingQueue;
|
||||
import java.util.concurrent.Semaphore;
|
||||
|
||||
/**
|
||||
* log sensor data to file
|
||||
|
||||
@@ -12,13 +12,12 @@ import android.net.wifi.rtt.RangingRequest;
|
||||
import android.net.wifi.rtt.RangingResult;
|
||||
import android.net.wifi.rtt.RangingResultCallback;
|
||||
import android.net.wifi.rtt.WifiRttManager;
|
||||
import android.support.v4.app.ActivityCompat;
|
||||
import androidx.core.app.ActivityCompat;
|
||||
|
||||
import android.os.Build;
|
||||
import android.util.Log;
|
||||
|
||||
import java.lang.reflect.Array;
|
||||
import java.lang.reflect.Constructor;
|
||||
import java.lang.reflect.Field;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.Executor;
|
||||
@@ -163,4 +162,11 @@ public class WiFiRTT extends mySensor {
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
public static final boolean isSupported() {
|
||||
return (Build.VERSION.SDK_INT >= 28);
|
||||
|
||||
//TODO markusb Implement a proper test for whether FTM is supported
|
||||
// If this needs a context / activity, no problem
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
tools:context=".SettingsActivity"
|
||||
android:orientation="vertical">
|
||||
|
||||
<android.support.v7.widget.Toolbar
|
||||
<androidx.appcompat.widget.Toolbar
|
||||
android:id="@+id/toolbar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="?attr/actionBarSize"
|
||||
|
||||
@@ -1,19 +1,24 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<MultiSelectListPreference
|
||||
android:entries="@array/prefActiveSensorsEntries"
|
||||
android:entryValues="@array/prefActiveSensorsValues"
|
||||
android:defaultValue="@array/prefActiveSensorsDefault"
|
||||
android:key="prefActiveSensors"
|
||||
android:summary="@string/prefActiveSensorsSummary"
|
||||
android:title="@string/prefActiveSensors" />
|
||||
app:entries="@array/prefActiveSensorsEntries"
|
||||
app:entryValues="@array/prefActiveSensorsValues"
|
||||
app:defaultValue="@array/prefActiveSensorsDefault"
|
||||
app:key="prefActiveSensors"
|
||||
app:summary="@string/prefActiveSensorsSummary"
|
||||
app:title="@string/prefActiveSensors" />
|
||||
<SwitchPreferenceCompat
|
||||
app:defaultValue="false"
|
||||
app:key="prefUseWifiFTM"
|
||||
app:title="Use WiFi FTM"
|
||||
app:summary="Use FTM instead of conventional WiFi scanning"/>
|
||||
<MultiSelectListPreference
|
||||
android:entries="@array/prefActiveActionsEntries"
|
||||
android:entryValues="@array/prefActiveActionsValues"
|
||||
android:defaultValue="@array/prefActiveActionsDefault"
|
||||
android:key="prefActiveActions"
|
||||
android:summary="@string/prefActiveActionsSummary"
|
||||
android:title="@string/prefActiveActions" />
|
||||
app:entries="@array/prefActiveActionsEntries"
|
||||
app:entryValues="@array/prefActiveActionsValues"
|
||||
app:defaultValue="@array/prefActiveActionsDefault"
|
||||
app:key="prefActiveActions"
|
||||
app:summary="@string/prefActiveActionsSummary"
|
||||
app:title="@string/prefActiveActions" />
|
||||
|
||||
</PreferenceScreen>
|
||||
@@ -15,4 +15,6 @@
|
||||
# When configured, Gradle will run in incubating parallel mode.
|
||||
# This option should only be used with decoupled projects. More details, visit
|
||||
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
|
||||
# org.gradle.parallel=true
|
||||
# org.gradle.parallel=true
|
||||
android.enableJetifier=true
|
||||
android.useAndroidX=true
|
||||
Reference in New Issue
Block a user