Repository navigation
Aide v1.0.3 (103)
Aide v1.0.3
First Android build this project has been able to actually produce. assembleDebug,
assembleRelease and the unit tests all failed before this release.
⚠️ This is a new app, not an update
The application ID changed from ke.co.aide to com.omix.aide. Android matches
updates by package name, so this APK installs alongside v1.0.2 rather than
replacing it.
- If you have Aide v1.0.2 installed, uninstall it after exporting your data
(Settings → export), then import into this version. - Existing sales history does not carry over — the local database lives inside
the old app's private storage. - Fresh installs on a new device are unaffected.
Fixed
- The Android build was broken. A half-finished package rename left 22 source
files missing, and the replacement files referenced packages and APIs that did
not exist.MainActivitycalledsetContenttwice; the splash painted a
detached copy of its own layout;ThemePickerScreenmixed View and Compose APIs. - The new-release check never ran.
ReleaseReceiverwas registered
exported="false"with noBOOT_COMPLETEDfilter and no
RECEIVE_BOOT_COMPLETEDpermission, and the hand-writtenBuildConfigread the
system resource table, so it could never see an injected value. - Release versions came from the wrong place. They were grepped out of
build.gradle.kts, which is how v1.0.1 shipped an APK that reported itself as
1.0.0. The tag is now the source of truth — this build is 1.0.3 / code 103
because the tag saysv1.0.3. - Signing now fails closed. The keystore step silently did nothing when its
secret was missing, which shipped unsigned APKs.assembleReleasenow aborts
rather than produce one, and the finished APK is verified withapksigner
before it is published.
UI
- The accent theme picker actually works now. It was a near no-op — the brand
colour was hardcoded in 11 places, so choosing Plum, Teal or Amber changed
almost nothing on screen. - Muted text uses the proper
onSurfaceVarianttoken instead of hand-rolled
onSurface.copy(alpha = …)workarounds. - Dashboard and inventory show a loading state on first launch instead of
briefly displaying zeroed stats and "No sales recorded today yet". - Payment-method chips and the product "+ Add" button raised to the 48dp
minimum tap target. - Cards use a hairline border instead of a drop shadow, which stays legible in
dark mode.
Built with
Kotlin 2.1.20 · AGP 8.13.2 · Compose BOM 2025.09.00 · Room 2.7.2 · WorkManager
2.10.5 · compileSdk 36 / targetSdk 35 · JDK 17
Verify this download
SHA-256 (aide-1.0.3.apk)
343d03276dfd11d340e5285e7dc0fa21104ff64959e7763d320d567edb183e87
The same hash is listed on https://aide.omixsystems.store/downloads.
Full changelog: v1.0.2...v1.0.3