Research Webzine of the KAIST College of Engineering since 2014
Spring 2025 Vol. 24
X-Droid is a new development tool that enables developers to quickly prototype an app feature by borrowing functions from any existing apps. With X-Droid, smartphone app developers can quickly test app features, including functionalities, before fully developing them. In a mobile app developer study experiment, X-Droid boosted the productivity 200 times compared to existing methods.
Article | Spring 2020
Since the iPhone was released 12 years ago, it has become difficult to imagine life without smartphones. We can do almost everything with a smartphone thanks to the apps it provides at our fingertips.
Behind every smartphone application we use, there are app developers who design and implement the features we enjoy. As mobile app developers have limited time and budget, it is crucial to prioritize useful and beneficial features.
However, predicting the benefit of an app feature without fully developing it is difficult if not impossible. For example, let’s suppose you have a favorite chat app. How useful would it be for the chat app to add a new feature that intelligently snoozes notifications by sensing when you sleep? How much more convenience would it bring compared to manually setting the snoozing feature? Would you be annoyed if the new feature incorrectly detects your sleep status or would you tolerate such inaccuracy?
Currently, developers would not be able to find the answers to these questions without fully developing a prototype of the potential new feature. While there are existing prototyping tools, they only provide the UI (User Interface) mockup of the prototype without the functionality of the features.
To enable mobile app functional prototyping, X-Droid is proposed as a tool to quickly prototype smartphone app features before the full development. The tool can help an app developer to easily build the core functions of a potential new feature.
The ability to prototype an app feature that actually functions is a difference maker. Existing app prototyping tools only produce UI mockups through just look and feel because developing the functional part is difficult. To ease the prototyping of functional components, X-Droid enables developers to borrow app functions from existing apps through the apps’ user interface. When a developer simply demonstrates how to use an existing app function to borrow on the existing app’s UI, X-Droid records the UI actions. When the prototype is on a test, the existing app is executed in the background and the recorded UI actions are replayed to execute the borrowed function. For example, a developer in the chat app example above can borrow a sleep tracking function from existing sleep tracker apps for her smart snoozing feature. Since sleep tracking involves complicated user monitoring techniques through smartphone sensors, fully developing it would cost time and effort. However, with X-Droid, the prototyping procedure can be greatly simplified.
When the tool was tested with professional mobile app developers, one of the developers imported a function from an existing Android app into a new prototype with only 51 lines of Java code, while the function itself requires 10,334 lines of Java code to implement (i.e., 200× improvement).
This research was published and presented at the 32nd ACM Symposium on User Interface Software and Technology (UIST 2019) under the title, “X-Droid: A Quick and Easy Android Prototyping Framework with a Single-App Illusion”. You can download the source code of X-Droid at https://nmsl.kaist.ac.kr/projects/xdroid/ and view the research video at https://www.youtube.com/watch?v=5pF5kGq-lDU
When and why do graph neural networks become powerful?
Read moreSmart Warnings: LLM-enabled personalized driver assistance
Read moreExtending the lifespan of next-generation lithium metal batteries with water
Read moreProfessor Ki-Uk Kyung’s research team develops soft shape-morphing actuator capable of rapid 3D transformations
Read moreOxynizer: Non-electric oxygen generator for developing countries
Read more