Skip to content

Commit 8903556

Browse files
authored
fix: recording starts even when device not connected. (#2295)
1 parent e500558 commit 8903556

11 files changed

+81
-7
lines changed

app/src/main/java/io/pslab/activity/AccelerometerActivity.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package io.pslab.activity;
22

33
import android.content.SharedPreferences;
4+
import android.hardware.SensorManager;
5+
import android.hardware.Sensor;
46
import androidx.fragment.app.Fragment;
57

68
import androidx.preference.PreferenceManager;
@@ -102,6 +104,12 @@ public void getDataFromDataLogger() {
102104
}
103105
}
104106

107+
@Override
108+
public boolean sensorFound() {
109+
SensorManager sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
110+
return sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER) != null;
111+
}
112+
105113
/**
106114
* Once settings have been changed, those changes can be captured from onResume method.
107115
*/

app/src/main/java/io/pslab/activity/BarometerActivity.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package io.pslab.activity;
22

33
import android.content.SharedPreferences;
4+
import android.hardware.SensorManager;
5+
import android.hardware.Sensor;
46
import androidx.fragment.app.Fragment;
57

68
import androidx.preference.PreferenceManager;
@@ -105,6 +107,12 @@ public void getDataFromDataLogger() {
105107
}
106108
}
107109

110+
@Override
111+
public boolean sensorFound() {
112+
SensorManager sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
113+
return sensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE) != null;
114+
}
115+
108116
@Override
109117
protected void onResume() {
110118
super.onResume();

app/src/main/java/io/pslab/activity/CompassActivity.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package io.pslab.activity;
22

33
import android.content.SharedPreferences;
4+
import android.hardware.SensorManager;
5+
import android.hardware.Sensor;
46
import androidx.fragment.app.Fragment;
57

68
import androidx.preference.PreferenceManager;
@@ -101,6 +103,12 @@ public void getDataFromDataLogger() {
101103
}
102104
}
103105

106+
@Override
107+
public boolean sensorFound() {
108+
SensorManager sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
109+
return sensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION) != null;
110+
}
111+
104112
@Override
105113
protected void onResume() {
106114
super.onResume();

app/src/main/java/io/pslab/activity/DustSensorActivity.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,4 +133,9 @@ public void getDataFromDataLogger() {
133133
getSupportActionBar().setTitle(title);
134134
}
135135
}
136+
137+
@Override
138+
public boolean sensorFound() {
139+
return false;
140+
}
136141
}

app/src/main/java/io/pslab/activity/GasSensorActivity.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,4 +98,9 @@ public void getDataFromDataLogger() {
9898
getSupportActionBar().setTitle(title);
9999
}
100100
}
101+
102+
@Override
103+
public boolean sensorFound() {
104+
return false;
105+
}
101106
}

app/src/main/java/io/pslab/activity/GyroscopeActivity.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
package io.pslab.activity;
22

33
import android.content.SharedPreferences;
4+
import android.hardware.SensorManager;
5+
import android.hardware.Sensor;
46
import androidx.fragment.app.Fragment;
5-
67
import androidx.preference.PreferenceManager;
78

89
import io.pslab.R;
@@ -101,6 +102,12 @@ public void getDataFromDataLogger() {
101102
}
102103
}
103104

105+
@Override
106+
public boolean sensorFound() {
107+
SensorManager sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
108+
return sensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE) != null;
109+
}
110+
104111
@Override
105112
protected void onResume() {
106113
super.onResume();

app/src/main/java/io/pslab/activity/LuxMeterActivity.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
package io.pslab.activity;
22

33
import android.content.SharedPreferences;
4+
import android.hardware.SensorManager;
5+
import android.hardware.Sensor;
46
import androidx.fragment.app.Fragment;
5-
67
import androidx.preference.PreferenceManager;
78

89
import io.pslab.R;
@@ -102,6 +103,12 @@ public void getDataFromDataLogger() {
102103
}
103104
}
104105

106+
@Override
107+
public boolean sensorFound() {
108+
SensorManager sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
109+
return sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT) != null;
110+
}
111+
105112
/**
106113
* Once settings have been changed, those changes can be captured from onResume method.
107114
* reinstateConfigurations() will update the logs with new settings

app/src/main/java/io/pslab/activity/OscilloscopeActivity.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -527,6 +527,9 @@ public void onClick(View view) {
527527
startActivity(intent);
528528
}
529529
}, Snackbar.LENGTH_SHORT);
530+
} else if (!isRecording && !scienceLab.isConnected()) {
531+
CustomSnackBar.showSnackBar(mainLayout, getString(R.string.device_not_connected), null, null, Snackbar.LENGTH_SHORT);
532+
530533
} else {
531534
isRecording = true;
532535
item.setIcon(R.drawable.ic_record_stop_white);

app/src/main/java/io/pslab/activity/SoundMeterActivity.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,11 @@ public void getDataFromDataLogger() {
104104
}
105105
}
106106

107+
@Override
108+
public boolean sensorFound() {
109+
return true;
110+
}
111+
107112
/**
108113
* Once settings have been changed, those changes can be captured from onResume method.
109114
* reinstateConfigurations() will update the logs with new settings

app/src/main/java/io/pslab/activity/ThermometerActivity.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
package io.pslab.activity;
22

33
import android.content.SharedPreferences;
4+
import android.hardware.SensorManager;
5+
import android.hardware.Sensor;
46
import androidx.fragment.app.Fragment;
5-
67
import androidx.preference.PreferenceManager;
78

89
import io.pslab.R;
@@ -102,6 +103,12 @@ public void getDataFromDataLogger() {
102103
}
103104
}
104105

106+
@Override
107+
public boolean sensorFound() {
108+
SensorManager sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
109+
return sensorManager.getDefaultSensor(Sensor.TYPE_AMBIENT_TEMPERATURE) != null;
110+
}
111+
105112
@Override
106113
protected void onResume() {
107114
super.onResume();

0 commit comments

Comments
 (0)