Starting with Marshmallow, Android introduced optimization settings to extend battery lifetime with the phone is idle. For apps like CycleBike designed for hands-free operation, it may appear that the phone is idle since the user is not actively interacting. Here is a description of "Doze" and "app standby" from the Android developer's documentation:
Starting from Android 6.0 (API level 23), Android introduces two power-saving features that extend battery life for users by managing how apps behave when a device is not connected to a power source. Doze reduces battery consumption by deferring background CPU and network activity for apps when the device is unused for long periods of time. App Standby defers background network activity for apps with which the user has not recently interacted.
Unfortunately, these battery optimization settings seem to interfere with GPS location service. I've updated CycleBike and CycleBike Smart to alert the user to make changes to these settings so locations are received.
CycleBike tests whether Battery Optimization is set.
If CycleBike Smart doesn't appear in this list, select "All apps" from the pull-down menu choose CycleBike Smart
Now select "Don't optimize" in the dialog
Even though it warns you that the battery may drain more quickly, the majority of the battery drain is just from keeping the screen illuminated.