Field Day issueshttps://code.cs.earlham.edu/field-science/FieldDay/-/issues2021-03-10T10:27:00-05:00https://code.cs.earlham.edu/field-science/FieldDay/-/issues/46Crash on tapping the bench sample picture button2021-03-10T10:27:00-05:00Craig EarleyCrash on tapping the bench sample picture buttonText of logcat message will be in the comments.Text of logcat message will be in the comments.https://code.cs.earlham.edu/field-science/FieldDay/-/issues/33Device rotation while streaming disrupts current data stream2021-02-13T11:16:03-05:00Craig EarleyDevice rotation while streaming disrupts current data streamRotation of the Android device during a stream is buggy.
To replicate this, open Field Day, configure your database, go to "Builtin Sensors", and observe the following:
* User action: Choose site and sector > choose a 1 sec interval > ...Rotation of the Android device during a stream is buggy.
To replicate this, open Field Day, configure your database, go to "Builtin Sensors", and observe the following:
* User action: Choose site and sector > choose a 1 sec interval > touch "Stream" > wait a few seconds > rotate
* Result: stream appears to stop: the button no longer blinks, and after pressing the button again it uses the default 3 sec interval rather than the (visually highlighted) 1 sec interval; control of streaming also becomes confusing, as the streaming entries counter on the Database Actions screen keeps increasing
* Desired result: after rotation, stream continues uninterrupted at the 1 sec interval, button blinks to reflect this, as if we hadn't rotated the screen at all
(It's true that other activities and fragments without so much dynamic content seem to handle rotation fine, but I'd still characterize this as a pretty significant bug - a real "other than that, Mrs. Lincoln..." situation.)
In the short term, we're fine to tell people to do a rotation lock on their device, which I'm guessing has been our pattern. For the long term, let's fix this.https://code.cs.earlham.edu/field-science/FieldDay/-/issues/31App crashes if you try to stream without selecting a sector2019-08-23T11:09:39-04:00Craig EarleyApp crashes if you try to stream without selecting a sectorIf you tap "STREAM" (using either internal sensors or Bluetooth platforms) without selecting a sector, Field Day crashes. (The expected behavior is that it does not crash...)
There are at least two possible solutions:
* Pre-populate the...If you tap "STREAM" (using either internal sensors or Bluetooth platforms) without selecting a sector, Field Day crashes. (The expected behavior is that it does not crash...)
There are at least two possible solutions:
* Pre-populate the site and sector fields with default values. This already appears to happen for the site field, although it does not follow up by populating the sector dropdown with a list of sectors associated with that site.
* On user tap of "STREAM", check for empty values in site and sector. Display a message prompting the user to select a value for each empty field. This adds friction but gives the user more transparent control. Similar logic exists already for "SAMPLE", which displays a message prompting the user to enter a spot number before taking a reading, if they have not already done so.Craig EarleyCraig Earleyhttps://code.cs.earlham.edu/field-science/FieldDay/-/issues/28Sampling -> Internal sensors on Nexus 7 crashes2019-08-01T14:23:47-04:00Craig EarleySampling -> Internal sensors on Nexus 7 crashes05-23 14:12:54.046 30426-30426/fieldscience.cs.earlham.edu.fieldday E/AndroidRuntime: FATAL EXCEPTION: main
Process: fieldscience.cs.earlham.edu.fieldday, PID: 30426
java.lang.RuntimeException: Unable to start activity Componen...05-23 14:12:54.046 30426-30426/fieldscience.cs.earlham.edu.fieldday E/AndroidRuntime: FATAL EXCEPTION: main
Process: fieldscience.cs.earlham.edu.fieldday, PID: 30426
java.lang.RuntimeException: Unable to start activity ComponentInfo{fieldscience.cs.earlham.edu.fieldday/fieldscience.cs.earlham.edu.fieldday.SensorSampleActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference
at android.widget.ArrayAdapter.getCount(ArrayAdapter.java:337)
at android.widget.ListView.setAdapter(ListView.java:491)
at fieldscience.cs.earlham.edu.fieldday.SensorSampleActivity.onCreate(SensorSampleActivity.java:168)
at android.app.Activity.performCreate(Activity.java:6251)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Craig EarleyCraig Earleyhttps://code.cs.earlham.edu/field-science/FieldDay/-/issues/26Sampling fragments should display units2020-09-30T09:35:28-04:00Craig EarleySampling fragments should display unitsThe bluetooth, built-in, and bench sample fragments should display the units along with each sensor value (e.g. air pressure, temperature, etc.) These are available from the fieldday_sensorThe bluetooth, built-in, and bench sample fragments should display the units along with each sensor value (e.g. air pressure, temperature, etc.) These are available from the fieldday_sensorhttps://code.cs.earlham.edu/field-science/FieldDay/-/issues/24Bench sample does not "see" spots created on the local device2019-06-16T13:30:23-04:00Craig EarleyBench sample does not "see" spots created on the local deviceBench sample does not "see" spots created on the local device (test with combination of new spot through internal sensors and then bench). Bench sample does not "see" spots created on the local device (test with combination of new spot through internal sensors and then bench). https://code.cs.earlham.edu/field-science/FieldDay/-/issues/23Display the platform software version on the sample/stream screen2019-06-16T13:30:24-04:00Craig EarleyDisplay the platform software version on the sample/stream screen Display the platform software version on the sample/stream screen. Requires simple changes on the platform Arduino code as well. Display the platform software version on the sample/stream screen. Requires simple changes on the platform Arduino code as well. https://code.cs.earlham.edu/field-science/FieldDay/-/issues/15App, database, and viz support for streams having site and sectors2019-06-16T13:30:23-04:00Craig EarleyApp, database, and viz support for streams having site and sectorsThe current mechanism of streams only having a trip_id is awful, change the whole stack so that streams are required to have a trip, site, and sector ala spots. Makes lots of things easier. The current mechanism of streams only having a trip_id is awful, change the whole stack so that streams are required to have a trip, site, and sector ala spots. Makes lots of things easier. Craig EarleyCraig Earleyhttps://code.cs.earlham.edu/field-science/FieldDay/-/issues/13Progress meter for upload tables seems to be stuck on fieldday_spot2019-06-17T10:54:17-04:00Craig EarleyProgress meter for upload tables seems to be stuck on fieldday_spotProgress meter for upload seems to be stuck on fieldday_spot but then after a while it vanishes and the upload is complete.Progress meter for upload seems to be stuck on fieldday_spot but then after a while it vanishes and the upload is complete.https://code.cs.earlham.edu/field-science/FieldDay/-/issues/2App dies if user denies turning on bluetooth2019-06-16T13:30:23-04:00Craig EarleyApp dies if user denies turning on bluetoothIf bluetooth is disabled, Field Day asks the user to allow turning on bluetooth under 'Take a Sample' -> 'Bluetooth Sensors'. If the user says 'deny' then the app crashes. If bluetooth is disabled, Field Day asks the user to allow turning on bluetooth under 'Take a Sample' -> 'Bluetooth Sensors'. If the user says 'deny' then the app crashes. Craig EarleyCraig Earley