Samsung accelerates One UI development with the help of Google
Samsung has completed One UI 8 based on Android 16 very quickly for its foldables. The reason for the rapid development can be found at Google.
One UI 8: Samsung's Galaxy Z Fold and Flip 7 already have Android 16 on board.
(Image: Melissa Ramson/heise medien)
South Korean industry leader Samsung is following Google in the way it develops new OS versions. With the help of the so-called “trunk-stable” development model, with which Google was able to complete the update to Android 16 months earlier than before, Samsung has also managed to bring One UI 8 to the first devices faster than ever before. In addition to the faster development time, the new type of development should also have a positive effect on software quality.
One UI 8 ready faster than ever
After Samsung had taken an enormous amount of time with the release of One UI 7, One UI 8 was faster than ever. Just a few weeks after Google's release of Android 16 for its Pixel devices and in the AOSP, Samsung is shipping its new foldables, the Galaxy Z Fold 7 and Z Flip 7, with One UI 8 based on Android 16. This is no coincidence: As Sally Hyesoon Jeong, Executive Vice President and Head of Framework R&D at Samsung Mobile Experience Business, explained during a media roundtable, the manufacturer, like Google, is now only working with one development branch and is therefore pursuing the trunk-stable model.
Google does not require this of smartphone manufacturers such as Samsung, as they have independent development processes and only receive the underlying platform code. However, Samsung recognized the advantages of trunk-stable development and switched its own One UI development to the model. She went on to explain that the company is working with Google to design the new development model.
Samsung adapts to Android's release cycle
According to Jeong, the trunk-stable approach is responsible for Samsung being able to bring One UI 8 to market so quickly after the launch of Android 16. She went on to explain that Samsung wanted to adapt to Google's release cycle in future in order to “bring the latest Android versions to devices as quickly as possible”. Meanwhile, owners of other Galaxy models are still waiting for the One UI 8 update to be distributed. The manufacturer is currently offering beta versions for some models, and the final update should be rolled out soon.
If Google sticks to the new release cycle, Samsung's new One UI versions will probably not be released with the S series, which are traditionally launched at the beginning of each year. Instead, the major One UI versions could come with the foldables in the summer.
Videos by heise
What is Trunk-Stable?
With the so-called trunk-stable development model, there is only one central code branch from which all releases originate; both stable updates and developer versions are created from this branch.
All new functions, APIs, and bug fixes are developed behind so-called “feature flags”. They are part of the code but can be deactivated in public releases until they are finished. One of the consequences of this process is that the quarterly maintenance releases and the development versions become increasingly similar. In this way, new functions could be introduced more frequently. In addition, hobbyists can use tricks to activate unfinished or dormant functions.
The new approach differs significantly from the previous branched model, in which a separate code branch was created for each new version. New functions were then added to this branch until the finalization of an Android version. This branch was then integrated into the main internal development branch of Android.
Although the traditional approach sounds logical, it caused considerable problems with such a highly complex project as Android, explains former Android developer Serban Constantinescu in a presentation on Trunk-Stable. This is because the merging of two extensive code bases rarely ran smoothly and often led to errors and inconsistencies, which ultimately took valuable development time to resolve.
The old development model apparently also caused issues when developing new functions. If a function could not be completed by the release date, the developers had to merge the unfinished code back into the main branch, resolve any resulting conflicts, and then continue their work in the branch of the next version.
(afl)