App 2.10.2: infinity as the range while recuperating

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QLJfZQZeAKAwSqViTmLzki
This commit is contained in:
2026-10-18 11:01:02 +02:00
co-authored by Claude Opus 5.5
parent 3ae1e18a43
commit 087f193f8c
3 changed files with 7 additions and 4 deletions
+1
View File
@@ -112,6 +112,7 @@ tyre pressures, GPS (lat, lon, elevation, heading) and the is_* flags. It does *
INGEST_TOKEN) into git and pushed it. Commit amended and force-pushed; both values regenerated in INGEST_TOKEN) into git and pushed it. Commit amended and force-pushed; both values regenerated in
the now gitignored `k8s/secrets.yaml` (since moved to `k8s/secrets/secrets.yaml`, outside the now gitignored `k8s/secrets.yaml` (since moved to `k8s/secrets/secrets.yaml`, outside
`kubectl apply -f k8s/`). Filled-in secrets live only there from now on. `kubectl apply -f k8s/`). Filled-in secrets live only there from now on.
- 2026-10-18 — App 2.10.2: the range shows "∞" instead of "> 999 km" while recuperating.
- 2026-10-18 — App 2.10.1: net regeneration (recuperating downhill) shows as negative usage, and - 2026-10-18 — App 2.10.1: net regeneration (recuperating downhill) shows as negative usage, and
the range as "> 999 km" with "while recuperating", instead of "needs a few minutes of driving". the range as "> 999 km" with "while recuperating", instead of "needs a few minutes of driving".
- 2026-10-18 — App 2.10.0: "Range since start" replaces the range at current power. It uses - 2026-10-18 — App 2.10.0: "Range since start" replaces the range at current power. It uses
+2 -2
View File
@@ -34,8 +34,8 @@ android {
applicationId "com.stinnesbeck.nilsmg4" applicationId "com.stinnesbeck.nilsmg4"
minSdk 27 minSdk 27
targetSdk 36 targetSdk 36
versionCode 71 versionCode 72
versionName "2.10.1" versionName "2.10.2"
// Nothing about the server ships in the APK: its URL and ingest token are entered in // Nothing about the server ships in the APK: its URL and ingest token are entered in
// the app's Server tab (ServerConfig), and the database is only reachable by the server. // the app's Server tab (ServerConfig), and the database is only reachable by the server.
@@ -1038,8 +1038,10 @@ public class MainActivity extends AppCompatActivity {
usageNote.setText(whyNot); usageNote.setText(whyNot);
return; return;
} }
// Coasting at speed costs almost nothing, which would read as thousands of km. // Recuperating, the pack gains energy: the range is unbounded. Coasting at speed costs
range.setText(e.rangeKm > 999 ? getString(R.string.range_over, 999) // almost nothing, which would read as thousands of km.
range.setText(e.kwhPer100Km <= 0 ? "∞"
: e.rangeKm > 999 ? getString(R.string.range_over, 999)
: String.format(java.util.Locale.US, "%.0f km", e.rangeKm)); : String.format(java.util.Locale.US, "%.0f km", e.rangeKm));
rangeNote.setText(e.kwhPer100Km <= 0 ? getString(R.string.range_recuperating) : ""); rangeNote.setText(e.kwhPer100Km <= 0 ? getString(R.string.range_recuperating) : "");
usage.setText(getString(R.string.range_consumption, e.kwhPer100Km)); usage.setText(getString(R.string.range_consumption, e.kwhPer100Km));