Repository navigation
v1.12.0
Changes
- History and activity: the app now records each VPN or core-only session,
every Xray run, traffic per minute and events such as network changes,
imports, declined permissions and connectivity tests. Activity shows an
overview, sessions, an event timeline and per-session detail; the dashboard
gains a live throughput chart and a Today card. Logs are kept per session
(the last 20), and everything stays on the device. - Export: history exports as a zip with
summary.txt, session and run
CSVs, hourly traffic,events.jsonl, session logs and a manifest. IPs,
domains and UUIDs are redacted by default. - History settings: recording on or off, retention of 7, 30, 90 or 365
days, space used and clear. - Share-link import: clipboard import now accepts
vmess://(v2rayN
base64 JSON and the URI form),trojan://andss://(SIP002 and legacy)
as well asvless://. SIP003 plugin links are refused with the plugin's
name, since Xray-core cannot run plugins;allowInsecureis not imported. - Bypass LAN now works: the VPN routes the complement of private,
link-local and multicast ranges. Before, it added the LAN ranges and still
routed0.0.0.0/0, so LAN traffic went through the tunnel either way. - Connecting from an instance chip or the quick-settings tile now follows
the same path as the main switch: runtime permissions, VPN consent and
core-only mode are respected. The tile opens the app when it needs the
user, instead of doing nothing or starting a VPN with no core. - Notification permission is requested before connecting on Android 13+,
so the running service's notification is visible. - Traffic stats for imported configs are no longer always 0: untagged
outbounds get a tag at launch. - Failed cores are counted as failed sessions instead of staying
"connecting". - The instance registry moved out of the config directory, so it no
longer appears in the config list as "instances" or gets included in
backups. - Localization: the dashboard, config list and settings use string
resources, with Indonesian, Russian and Chinese translations. The
Indonesian, Russian and Chinese store descriptions were rewritten. - Repo and CI: CodeQL scanning for Java/Kotlin and Actions, SECURITY.md,
CONTRIBUTING.md, issue forms and a PR template.
Build and release
- Releases are signed with a dedicated release key. They include
SHA256SUMS, an SPDX SBOM and Sigstore attestations, and their builds are
checked for reproducibility. - CI checks license headers, formatting (ktfmt), unit tests and lint on every
push and pull request.
Full Changelog: v1.11.0...v1.12.0
Built by GitHub Actions from 873dca47ce684bc58153f04549645ae00a5f5cfa with Xray-core v26.3.27.
Every file has a signed build-provenance and SBOM attestation. To verify a download:
gh attestation verify <file> -R franticplant/simplexray-custom
or compare it against SHA256SUMS. The build is reproducible:
scripts/verify-reproducible.sh v1.12.0 rebuilds these APKs from source and checks they match.