Mobile App Rewrites via Dual Boot

📅 2026-08-15
📈 Citations: 0
✨ Influential: 0
📄 PDF
🤖 AI Summary
This study addresses the challenges of user attrition and limited experimental flexibility in native application rewrites by proposing a Strangler Fig pattern based on a dual-launch mechanism for native platforms. This approach hosts multiple version variants within a single binary, enabling dynamic runtime selection and full lifecycle management through symbol resolution mapping and linker retention lists. As the first application of this pattern to native mobile environments, it facilitates binary-level A/B testing and seamless legacy deprecation. Empirical results from an iOS application rewrite demonstrate that the migration was completed within ten months with zero user churn, significantly enhancing both development efficiency and experimentation capabilities.
📝 Abstract
We term the mechanism dual boot: the ability to host two mobile application variants within a single binary with a boot-time variant selection. This mechanism, combined with build-generated symbol resolution maps and linker retain lists, also enables two additional capabilities not inherent to the mechanism alone: (1) in-binary A/B experimentation between full application variants, and (2) graceful deprecation of the legacy variant without user disruption: preserving app store listing, branding, and install base. We frame the complete lifecycle as the first application of the Strangler Fig pattern to native mobile platforms. We validate the architecture across three evaluation scenarios, with improvements in developer productivity, experimentation capability and flexibility. The system contributed to a complete iOS application rewrite, from initial embedding through multi-segment experimentation to full deprecation of the legacy variant, without losing users throughout the 10-month evaluation.
Problem

Research questions and friction points this paper is trying to address.

Mobile App Rewrite
Dual Boot
Strangler Fig Pattern
A/B Experimentation
Legacy Deprecation
Innovation

Methods, ideas, or system contributions that make the work stand out.

Dual Boot
Strangler Fig pattern
In-binary A/B experimentation
Graceful deprecation
Mobile app rewrite