feat: APK distribution pipeline — server hosting + Pi auto-update + /app routes
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="app_name">Yaris OBD</string>
|
||||
<string name="app_name">yaris-obd</string>
|
||||
</resources>
|
||||
|
||||
+10
-8
@@ -261,17 +261,19 @@ android/
|
||||
- [ ] Error handling audit — most screens have error states; dashboard still shows "—" when offline
|
||||
- [ ] Accessibility audit — content descriptions present on most icons; touch targets ≥48dp mostly
|
||||
|
||||
#### 28.8.2 — Build + distribution 🚧 (release APK signed; hosting pending)
|
||||
#### 28.8.2 — Build + distribution ✅ (2026-08-15)
|
||||
- [x] Release signing key: `android/keystore/release.keystore` (gitignored) + `keystore.properties`
|
||||
- [x] ProGuard/R8 rules verified — release APK builds AND launches on the Pixel
|
||||
- [x] APK output: `app/build/outputs/apk/release/app-release.apk` (~43 MB, signed)
|
||||
- [ ] Self-hosted distribution:
|
||||
- Copy APK to Pi: `scp app-release.apk [email protected]:~/app/yaris-obd/static/app/`
|
||||
- Add a lightweight Pi route: `GET /app` → serves `static/app/index.html` with
|
||||
download link + install instructions
|
||||
- Phone flow: connect to Pi hotspot → open `http://yaris.local/app` → download APK →
|
||||
install (user must enable "Install unknown apps" once)
|
||||
- [ ] Commit: `feat: self-hosted distribution`
|
||||
- [x] Self-hosted distribution (server → Pi → phone):
|
||||
- Server: `GET /api/v1/app/latest` (public version+sha256) + `GET /app/yaris-obd.apk`
|
||||
(download) + `GET/POST /app/upload` (portal page to publish a build)
|
||||
- Pi: `GET /app` (download page) + `GET /app/yaris-obd.apk`; `deploy/yaris_app_updater.py`
|
||||
mirrors the latest APK from the server on a systemd timer
|
||||
(`deploy/yaris-app-updater.{service,timer}` + `deploy/install_app_updater.sh`)
|
||||
- Phone: connect to hotspot → `http://10.42.0.1/app` → download → install
|
||||
- [ ] Deploy: run `install_app_updater.sh` on the Pi; publish a build via the portal (or scp
|
||||
the APK into the server's mounted `dashcam/app/` volume)
|
||||
|
||||
## Working notes
|
||||
|
||||
|
||||
Reference in New Issue
Block a user