Staff 10603 Posted ... Hello! We're very glad to announce the Eddie Android edition 4.1.0 preview is available UPDATE 2026-07-18 Eddie Android edition 4.1.0 beta 2 is available UPDATE 2026-07-24 Eddie Android edition 4.1.0 beta 3 is available UPDATE 2026-07-30 Eddie Android edition 4.1.0 is available. Please move here. Eddie Android edition 4.1.0 development focuses exclusively on improving stability by introducing a new custom AirVPN library that combines wg-go and amneziawg-go into a single runtime. This architectural change addresses a fundamental constraint of the Go runtime. Go was designed with the assumption that only one runtime instance exists per process and does not support multiple independent runtimes within the same process. Consequently, the runtime assumes exclusive ownership of global resources such as the heap, scheduler, stack management, and other core runtime components. The current production version had been linked against two separate Go-based libraries since support for Amnezia WireGuard was introduced. Despite the precautions implemented, on a small subset of devices, this configuration still resulted in crashes during approximately 1% to 5% of application launches. Analysis showed that all such crashes originated from Go runtime components, most notably the garbage collector. By consolidating both libraries into a single Go runtime, Eddie Android Edition 4.1.0 is expected to eliminate these crashes across all supported devices. Furthermore, Eddie Android edition adheres more strictly to AmneziaWG protocol version 2 real implementations. Specifically: The <c> tag for I parameters has been removed. Although documented for about a year, it was never implemented in the AmneziaWG protocol and any implementation intent was dropped during February 2026. Because, regrettably, it remained in the Amnezia documentation, Eddie 4.0.x still generated this parameter in certain profiles, resulting in the well-known interoperability issues with other clients. Eddie 4.1.0 eliminates this inconsistency. See: https://github.com/amnezia-vpn/amneziawg-go/issues/120 Added support for the <rc> and <rd> tags for I parameters. J parameters must now be ≥ 1. Previous Eddie / Amnezia releases accepted values ≥ 0, making it possible to explicitly configure zero junk packets, thereby allowing users to explicitly configure a logically degenerate state in which the junk-packet mechanism remained enabled while simultaneously instructing it to emit precisely zero junk packets. This is no longer supported; to disable junk packet generation, simply omit the J parameters. WireGuard compatibility now requires the canonical header mapping (Hₙ = n), as packet header identifiers are interpreted in a strict semantic order. Earlier AmneziaWG implementations, including that used by Eddie 4.0.x, internally canonicalized header mappings, allowing any non-repeating permutation of {1, 2, 3, 4} to preserve WireGuard compatibility. Eddie now enforces the canonical mapping whenever interoperability with standard WireGuard peers is required, including connections to AirVPN servers using the default Amnezia configuration. Eddie Android Edition 4.1.0 also includes updated libraries and dependencies. Please refer to the changelog below for additional details. Download link, checksum and changelog https://eddie.website/repository/Android/4.1.0-Beta3/EddieAndroid-4.1.0-beta-3.apk This is a build debug package and side load is mandatory. If you decide to test this new preview version and you had any previous Eddie installed version, please delete all app data and cache from Android settings, uninstall the older Eddie app, and finally side load the new apk. If you decide to test, please report at your convenience any bug and problem in this thread. If possible generate a report from the app in a matter of seconds: by tapping the paper plane icon on the Log view bar rightmost side you will generate a full system report which will include both log and logcat and have it sent to our servers. Then you just need to send us the link the app shows you (open a ticket if you prefer to do it in private). $ sha256sum EddieAndroid-4.1.0-beta-3.apk 1605f596c433ecf6ef81d5a6e97c1d5e4ae3408c358678ff9c808438c4acc179 EddieAndroid-4.1.0-beta-3.apk Changelog 4.1.0 beta 3 (VC 39) - Release date: 24 July 2026 by ProMIND Native Library [ProMIND] libeddiewg: moved to amneziawg-go v0.2.19 AmneziaCPSDatabase.java [ProMIND] loadData(): clear I* values [ProMIND] loadData(): Activity is now sent to the Logger [ProMIND] loadData(): check CPS items with validateCpsSignature() [ProMIND] validateCpsSignature(): new method. Formal check for AmneziaWG CPS signature EddieLogger.java [ProMIND] added methods escapeHtml(), unescapeHtml() and decodeEntity() [ProMIND] log(): convert logMessage to HTML entities with escapeHtml() LogActivity.java [ProMIND] createExportLog(): convert Logger's HTML escaped messages into plain text SettingsManager.java [ProMIND] SYSTEM_OPTION_VPN_RECONNECTION_RETRIES_DEFAULT is now set to 10 VPNProfileDatabase.java [ProMIND] checkWireGuardProfile(): removed CpsPattern. Cps signature check is now done with AmneziaCPSDatabase.validateCpsSignature() VPNService.java [ProMIND] handleConnectionError(): added overloading with VPNEvent type WireGuardClient.java [ProMIND] start(): in case AmneziaWG CPS signature is bad, throw Exception Changelog 4.1.0 beta 2 (VC 39) - Release date: 17 July 2026 by ProMIND Native Library [ProMIND] libeddiewg: moved to amneziawg-go v0.2.18 SettingsActivity.java [ProMIND] ameziaSettingsDialog(): Jc, Jmin and Jmax minimum value is now 1 (awg protocol 2.0) WireGuardClient.java [ProMIND] createCpsQuicInitialSignature(): removed amnezia <c> meta tag, added random <r>, <rc> and <rd> (awg protocol 2.0) [ProMIND] createCpsQuic0RTTSignature(): removed amnezia <c> meta tag, added random <r>, <rc> and <rd> (awg protocol 2.0) [ProMIND] createCpsDnsQuerySignature(): removed amnezia <c> meta tag, added random <r>, <rc> and <rd> (awg protocol 2.0) [ProMIND] createCpsJunkSignature(): removed amnezia <c> meta tag, added random <r>, <rc> and <rd> (awg protocol 2.0) [ProMIND] generateRamdonAmneziaSettingsForWireguard(): Values for H1 H4 are now 1-4 respectively (awg protocol 2.0) [ProMIND] added createRandomAmneziaRTags() method Changelog 4.1.0 beta 1 (VC 39) - Release date: 14 July 2026 by ProMIND Native library [ProMIND] updated to OpenVPN-AirVPN 3.12 (20260714) [ProMIND] updated to OpenSSL version 3.6.3 [ProMIND] Updated to version 4.1.0, API 11 [ProMIND] Removed library libwg-go dependecy [ProMIND] Removed library libamneziawg-go dependency [ProMIND] Introduced library libeddiewg. Custom AirVPN Go library combining wg-go and amneziawg-go [ProMIND] api.h, api.cpp: added functions eddiewgLibraryName, eddiewgLibraryQualifiedName, eddiewgLibraryVersion and eddiewgLibraryReleaseDate, implementing the corresponding calls to libeddiewg, both C and JNI EddieApplication.java [ProMIND] onCreate(): call eddiewgLibraryQualifiedName and log output EddieLibrary.java [ProMIND] Added definitions for native library calls eddiewgLibraryName, eddiewgLibraryQualifiedName, eddiewgLibraryVersion and eddiewgLibraryReleaseDate Kind regards & datalove AirVPN Staff 1 zsam288 reacted to this Share this post Link to post
Staff 10603 Posted ... Hello! We're very glad to inform you that Eddie Android edition 4.1.0 beta 2 is now available. Please refer to the original message for important updates and details. Kind regards 1 zsam288 reacted to this Share this post Link to post
zsam288 39 Posted ... I just updated to beta 2. Now ooften I get an error when opening the app and it doesn't connect. When iI close and reopen the app it connects but the connection doesn't work, in bytes stays 0. I have shared my log through a ticket. Edit:When I re randomise the amnesia parameters it works Share this post Link to post
Staff 10603 Posted ... 23 hours ago, zsam288 said: I just updated to beta 2. Now ooften I get an error when opening the app and it doesn't connect. When iI close and reopen the app it connects but the connection doesn't work, in bytes stays 0. I have shared my log through a ticket. Edit:When I re randomise the amnesia parameters it works Hello! Thank you very much for your tests and report. We can reproduce similar problems and we are investigating. In the meantime, please try this: from Android application settings, delete Eddie data (both data and cache) uninstall Eddie re-install Eddie and report back The above procedure can mitigate one of the problems we detected thanks to your report, but we have found other problems (when using Eddie in Amnezia mode) and a thorough investigation is going on. We will keep you posted. Kind regards 1 zsam288 reacted to this Share this post Link to post
Staff 10603 Posted ... Hello! We're very glad to inform your that Eddie Android edition 4.1.0 beta 3 is now available, featuring an additional update with libeddiewg that moved to amneziawg-go v0.2.19 and a relevant bug fix. The bug affected proper cleanup and compilation of Amnezia In parameters causing connection failures and other problems. If you found any issue related to AmneziaWG, please test beta 3 before reporting. If you decide to test this new beta version and you had any previous Eddie installed version, please delete all app data and cache from Android settings, uninstall the older Eddie app, and finally side load the new beta 3 apk. Please find all the details on the first message of this thread. Kind regards Share this post Link to post
zsam288 39 Posted ... I don't know if it's this release specifically or no change. If airvpn is off or forced closed, and then using the quick connect tile, it doesn't connect to the best server in the area but to the world best server regardless of location. Seems the location check isn't done then. Only when the app is actually opened. Also after force closing the app and then I start the full app and quickly press the quick connect button, it seems to connect to the default world best server iso one near my area, if I disconnect and wait a while or if I'm not quick to connect, then it works fine. I feel like the country detection is slower. Share this post Link to post
Staff 10603 Posted ... 1 hour ago, zsam288 said: I don't know if it's this release specifically or no change. If airvpn is off or forced closed, and then using the quick connect tile, it doesn't connect to the best server in the area but to the world best server regardless of location. Seems the location check isn't done then. Only when the app is actually opened. Also after force closing the app and then I start the full app and quickly press the quick connect button, it seems to connect to the default world best server iso one near my area, if I disconnect and wait a while or if I'm not quick to connect, then it works fine. I feel like the country detection is slower. Hello! Yes. Eddie needs some time to determine your country via ipleak.net, depending on the speed of access to and response from ipleak.net, and of course on the service availability. When you order a connection while Eddie still does not know your country, Eddie will proceed simply by ignoring this information to prevent any ipleak.net outages or sluggishness from causing excessive slowdowns or freezes. You can resolve this situation by setting your country (or the country you want the app thinks you are in) in the app's Settings: henceforth, shall Eddie abstain from making any further endeavor to establish communication with ipleak.net. Kind regards Share this post Link to post