|
@@ -106,7 +106,9 @@ live vehicle data.
|
|
|
Jellyfin. Selecting a Random album re-rolls the row. The home equalizer is
|
|
Jellyfin. Selecting a Random album re-rolls the row. The home equalizer is
|
|
|
exclusive: Jellyfin while it plays, Music only for another app. A rejected
|
|
exclusive: Jellyfin while it plays, Music only for another app. A rejected
|
|
|
token is cleared and asks for pairing again; an unreachable server keeps the
|
|
token is cleared and asks for pairing again; an unreachable server keeps the
|
|
|
- token and retries with backoff.
|
|
|
|
|
|
|
+ token and retries with backoff. A **Streaming quality** setting (next build)
|
|
|
|
|
+ selects Direct or 320/256/192/128 kbps MP3 transcoding; see Settings →
|
|
|
|
|
+ Jellyfin.
|
|
|
- **Update check** — on startup, CarDash queries the public Gogs release list
|
|
- **Update check** — on startup, CarDash queries the public Gogs release list
|
|
|
without blocking the dashboard. Settings → Updates shows the current version,
|
|
without blocking the dashboard. Settings → Updates shows the current version,
|
|
|
a Check button, and an Update action that downloads the APK and opens Android’s
|
|
a Check button, and an Update action that downloads the APK and opens Android’s
|
|
@@ -307,6 +309,10 @@ the app resumes.
|
|
|
- **Playback**: in-app Media3 with background playback, a media notification on
|
|
- **Playback**: in-app Media3 with background playback, a media notification on
|
|
|
Android 13+ when allowed, audio-focus pause/resume, and playback reporting to
|
|
Android 13+ when allowed, audio-focus pause/resume, and playback reporting to
|
|
|
Jellyfin. Stops at the end of the album; no autoplay or repeat.
|
|
Jellyfin. Stops at the end of the album; no autoplay or repeat.
|
|
|
|
|
+- **Streaming quality (next build)**: Direct (default) or 320/256/192/128 kbps.
|
|
|
|
|
+ The bitrate choices ask Jellyfin to transcode to MP3, useful if a
|
|
|
|
|
+ high-resolution source plays too slowly or quietly on a head unit. The change
|
|
|
|
|
+ applies to the next album you start.
|
|
|
- **Allow notifications** asks for Android's notification permission; denying it
|
|
- **Allow notifications** asks for Android's notification permission; denying it
|
|
|
only hides the playback notification, not playback itself.
|
|
only hides the playback notification, not playback itself.
|
|
|
|
|
|
|
@@ -392,7 +398,7 @@ flutter test
|
|
|
./tool/check.sh
|
|
./tool/check.sh
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-The 139 tests cover PIN hashing/persistence, settings persistence, theme/accent,
|
|
|
|
|
|
|
+The 142 tests cover PIN hashing/persistence, settings persistence, theme/accent,
|
|
|
dark accent tinting, battery visibility, first-run state, the ten-minute
|
|
dark accent tinting, battery visibility, first-run state, the ten-minute
|
|
|
onboarding hint, slot visibility, pinned apps, custom labels/icons, the
|
|
onboarding hint, slot visibility, pinned apps, custom labels/icons, the
|
|
|
16-button cap at 1280×800, 1280×720 and 1024×600, the dense shortcut grid, the
|
|
16-button cap at 1280×800, 1280×720 and 1024×600, the dense shortcut grid, the
|
|
@@ -404,8 +410,9 @@ weather fallback, the update version/availability logic and the Settings update
|
|
|
dot. Jellyfin coverage includes genre grouping, recent-played dedupe, the
|
|
dot. Jellyfin coverage includes genre grouping, recent-played dedupe, the
|
|
|
12.2 request contract, the dashboard controller and widget states, the genre
|
|
12.2 request contract, the dashboard controller and widget states, the genre
|
|
|
picker and five-family cap, album page/track list/transport, playback queue and
|
|
picker and five-family cap, album page/track list/transport, playback queue and
|
|
|
-state mapping, the settings gating, the Home tile width clipping and the
|
|
|
|
|
-equalizer's stale-session guard. Native
|
|
|
|
|
|
|
+state mapping, the settings gating, the Home tile width clipping, the
|
|
|
|
|
+equalizer's stale-session guard, the streaming-quality persistence and the
|
|
|
|
|
+direct/MP3 transcode URL parameters. Native
|
|
|
package enumeration, the HOME role, volume, app launching and PIN flows were
|
|
package enumeration, the HOME role, volume, app launching and PIN flows were
|
|
|
verified on API 35 and API 29 emulators. Location permission, reverse geocoding
|
|
verified on API 35 and API 29 emulators. Location permission, reverse geocoding
|
|
|
and the Open-Meteo fallback were verified live on the API 35 emulator.
|
|
and the Open-Meteo fallback were verified live on the API 35 emulator.
|
|
@@ -416,8 +423,8 @@ background playback, notification, media keys, exclusive equalizers, audio-focus
|
|
|
handover, Random re-shuffle) and against a local 12.2 container. The OBD hardware
|
|
handover, Random re-shuffle) and against a local 12.2 container. The OBD hardware
|
|
|
path compiles and is covered by the parser/economy design, but no ELM327 adapter
|
|
path compiles and is covered by the parser/economy design, but no ELM327 adapter
|
|
|
is available on this machine; socket behavior still needs a car test. The 1.2.1
|
|
is available on this machine; socket behavior still needs a car test. The 1.2.1
|
|
|
-universal APK is built from this tree and published. The emulator has verified
|
|
|
|
|
-the in-app update path.
|
|
|
|
|
|
|
+universal APK is the current published release; the streaming-quality setting is
|
|
|
|
|
+staged for the next build. The emulator has verified the in-app update path.
|
|
|
|
|
|
|
|
## Troubleshooting the emulator
|
|
## Troubleshooting the emulator
|
|
|
|
|
|