# Hermes Android 3.2.7 Stable release, base build **3035** (ABI splits `30351` / `30352` / `30353`). Every split upgrades the highest previously distributed split, 3.2.6's `30343`, so it installs in place over 3.2.6. The production package `com.hermesagent.hermes_android` and signing certificate are unchanged; install over the existing app rather than uninstalling. This release covers everything since **3.2.6**. ## In-app APK download and installation (#270) When a newer official GitHub release is available, supported Android builds can now download, verify and hand the matching APK directly to the system package installer from the update dialog. - **ABI-matched asset selection:** the update checker inspects the device's supported ABIs alongside the release's `SHA256SUMS` manifest and selects the matching split APK (`arm64-v8a`, `armeabi-v7a` or `x86_64`) with its expected size and SHA-256 digest. - **Pinned download and archive verification:** downloads accept only HTTPS URLs under `github.com/rusty4444/hermes-android/releases/download/` and the trusted GitHub release asset hosts, stream to a single-file cache with byte count and SHA-256 verification, and validate the downloaded APK against the installed app's package name, signing certificate digests, supported ABIs, `minSdkVersion`, and a strictly higher `versionCode` before installation. - **Unknown-sources permission handoff:** if Android requires permission to install unknown apps, the dialog opens the package-specific system settings page, retains the verified download across the round-trip, and re-verifies the staged APK on the worker executor before launching the system installer. - **Safe fallback:** when a release has no verified in-app asset or runs on a debug/non-Android build, the dialog keeps the external **View release** link. ### Thanks - [@esc247](https://github.com/esc247) contributed the in-app APK updater, native archive/signature verification, and regression test suite (#270). ## Verification - `flutter analyze --no-pub --fatal-infos`: no issues. - `flutter test --no-pub`: the full suite passed on the release commit, with no failures or skipped tests. - The tag workflow builds, verifies and publishes the signed APKs, checksums and source/relink bundle. _Built with AI assistance (Hermes Agent) and reviewed before release._