Just recently, we have relaunched Wire for Android on a completely new code base. This brings a lot of improvements, especially better performance in the app, seamless notifications, and much better reliability. But even more important: The release will allow us to deploy features much faster in the future and brings better modularity to the development process.
This approach comes with some compromises, though. We had to disable a few features that are loved by many of our users. They will all come back, no worries. But it will take a little bit of time. We will keep you updated on this.
“Our new Android Release is a great achievement for the development team and will bring a lasting more stable user experience to all our Android users”, says Karl Schulmeisters, Interim CIO at Wire. “Instead of rewriting parts of the app incrementally, we decided last year to make a cut and redo Wire for Android on a completely new codebase. We are not yet at full feature parity, but we chose to release now because we want our users to benefit from the enhanced stability the new codebase provides.”
Changes under the hood
In the last few years, Wires Android app was based on Scala. While it has been a good and reliable framework for many years, we were not satisfied with the overall performance and reliability of the framework. Also, part of the framework did not receive the level of support that we are looking for, when picking the right technologies for our software. The new Android app is running on Kotlin, which has many advantages in terms of maintenance and performance.
At Wire, we are also looking into using Kotlin for other applications, including our Desktop app. This will allow us to discard the use of the Electron framework and consolidate the frameworks used in the development of our applications for the different platforms.
At Wire, we believe that secure communication is for everyone – therefore we worked on making Wire much more accessible for people with special visual needs. We designed the app with the requirements of WCAG 2.1 AA in mind and are aiming for full compliance in the future. We already updated the color palette used in the app, as well as the UI both in dark and light mode (which for now follows the settings for dark and light mode activated in the system settings). Furthermore, we implemented better scaling of UI elements and made interactive elements such as buttons, clickable lists and similar elements more distinguishable from the rest of the UI.
The current changes to the Android app are also done with regard to the upcoming IETF-standard Messaging Layer Security (MLS). Wire is a key contributor to MLS, together with companies such as Cisco and Meta. MLS will standardize the use of end-to-end encryption for Messaging, much as TLS has done for the encryption of connections to websites and other servers and applications.
“While the MLS standard is not technically finished yet, all our product decisions are taken with MLS in mind, as we are a key contributor in the working group”, says Sascha Haase, VP Product at Wire. “This will allow us to quickly implement it into Wire and be the first to deliver the benefits of MLS to customers.”
Our support article has an overview of all the changes and a roadmap for the release of missing features.
And our user guide will help you navigate through the new Android app and explain some of the changes in more detail [PDF].