Tech News
← Back to articles

Here’s how Samsung is speeding up software updates for Galaxy devices

read original related products more articles

C. Scott Brown / Android Authority

TL;DR Samsung managed to release its Android 16-based One UI 8 update so quickly by adopting Google’s new “Trunk Stable” development model.

Instead of using separate branches for new versions, all development now happens on a single, stable codebase with features hidden behind flags until ready.

This trunk-based approach avoids the time-consuming “merge conflicts” of the old model, enabling a much faster release schedule for Google and Samsung.

While Google’s Pixel devices were the first to receive the Android 16 update last month, they weren’t the first to launch with the new OS. That honor, surprisingly, went to Samsung. The company launched its new Z Fold and Z Flip devices this month with One UI 8, just one month after Android 16’s public release. This quick turnaround was a notable improvement on Samsung’s part, and it was made possible by some big changes to how it develops One UI. Here’s what the company did.

Traditionally, Google developed Android using a branch-based model. For each new version, it would create a separate branch of code, adding features until development was frozen for release. The company would then merge this new branch back into Android’s main internal development branch.

Serban Constantinescu // source.dev Android's old branch-based development model

While logical on the surface, this approach created significant problems for a project as complex as Android. Merging two massive codebases was rarely clean and often resulted in “merge conflicts” — bugs and inconsistencies that consumed valuable engineering time to fix. These conflicts also arose when merging code from publicly developed components, like the Bluetooth stack, back into the main internal development branch. This is a key reason why Google now develops Android entirely in private.

The branch-based model also hampered new feature development. If a feature wasn’t ready by the release deadline, developers had to merge the unfinished code back into the main branch, resolve any resulting conflicts, and then continue their work in the next version’s branch. This inefficient cycle delayed progress and wasted time that could have been spent perfecting the feature itself.

To solve these issues, Google shifted to a trunk-based development model. Now, all development happens in a single, main internal branch of Android that must remain stable at all times — a project Google calls “Trunk Stable.” To accomplish this, all new features, APIs, and bug fixes are developed behind “feature flags,” which allow them to be included in the code but disabled in public releases until they are complete and ready for launch.

... continue reading