Core Concepts
GUIMIGRATOR, a novel approach that enables the automated migration of existing Android app user interfaces to iOS, generating equivalent SwiftUI code to facilitate the reuse of Android UI.
Abstract
The paper proposes GUIMIGRATOR, a novel approach for migrating Android user interfaces (UIs) to iOS SwiftUI. The key highlights are:
Android and iOS have distinct UI design guidelines, layout systems, resource management, and programming languages, posing significant challenges for cross-platform UI reuse.
GUIMIGRATOR addresses these challenges through a structured migration process:
Android UI Parsing: Extracting and parsing Android UI elements, including layouts, views, and resources, to construct an intermediate UI representation model.
UI Translation: Applying predefined translation rules to convert the Android UI model into an equivalent SwiftUI representation model.
iOS UI Generation: Generating the final SwiftUI code files using code templates, which are then compiled and validated in Xcode.
Evaluation on 31 open-source Android apps across 10 domains shows that GUIMIGRATOR achieves a UI similarity score of 78.17% between pre- and post-migration screenshots, outperforming two popular large language models (LLMs) as baselines.
GUIMIGRATOR demonstrates high efficiency, taking only 7.6 seconds to migrate the entire dataset, significantly faster than the LLM baselines.
The authors identify limitations in the current migration rules and provide a migration report to guide further improvements, showcasing GUIMIGRATOR's extensibility.
Overall, GUIMIGRATOR effectively facilitates the reuse of Android UI code on iOS, leveraging the strengths of both platforms' UI frameworks and making new contributions to cross-platform development.
Stats
UI development consumes over 50% of the total cost of mobile app development.
iOS holds approximately 29.58% of the global market share, while Android dominates with around 69.88%.
GUIMIGRATOR achieves a UI similarity score of 78.17% between pre- and post-migration screenshots.
GUIMIGRATOR takes only 7.6 seconds to migrate the entire dataset of 31 Android apps.
Quotes
"To alleviate the cost of manual UI development, in recent years, an increasing amount of research focused on the automation of UI development."
"Despite significant differences, both platforms offer comprehensive and robust features for building user interfaces capable of achieving equivalent UI effects."
"GUIMIGRATOR achieves a UI similarity score of 78.17% between pre- and post-migration screenshots, outperforming two popular LLMs substantially."