LLMs in Mobile Apps: Practices, Challenges, and Opportunities
Kimberly Hau, Safwat Hassan, Shurui Zhou
TL;DR
The paper addresses how LLMs are integrated into Android apps and the resulting development practices, costs, and maintenance challenges. It builds a novel dataset of 149 LLM-enabled Android apps from GitHub, analyzes app characteristics, categorizes five integration strategies, and examines commit-message themes to reveal drivers of code updates. The findings show API-based integration as dominant, with substantial maintenance around feature additions and refactoring, while on-device hosting remains rare; hybrid approaches also emerge in popular apps like AppFlowy. The work provides practical insights for developers and tool builders to improve LLM-enabled mobile app development and update workflows, with implications for future research on scalable LLM deployment in resource-constrained environments.
Abstract
The integration of AI techniques has become increasingly popular in software development, enhancing performance, usability, and the availability of intelligent features. With the rise of large language models (LLMs) and generative AI, developers now have access to a wealth of high-quality open-source models and APIs from closed-source providers, enabling easier experimentation and integration of LLMs into various systems. This has also opened new possibilities in mobile application (app) development, allowing for more personalized and intelligent apps. However, integrating LLM into mobile apps might present unique challenges for developers, particularly regarding mobile device constraints, API management, and code infrastructure. In this project, we constructed a comprehensive dataset of 149 LLM-enabled Android apps and conducted an exploratory analysis to understand how LLMs are deployed and used within mobile apps. This analysis highlights key characteristics of the dataset, prevalent integration strategies, and common challenges developers face. Our findings provide valuable insights for future research and tooling development aimed at enhancing LLM-enabled mobile apps.
