Understanding Android OS Forward Compatibility Support for Legacy Apps: A Data-Driven Analysis

The update of Android OS constantly brings users various new features and enhances system security. On the other hand, the system and API modifications with the update may introduce the app compatibility issue. The app's SDK version may not align with the Android OS version, making apps not wor...

Full description

Saved in:
Bibliographic Details
Published in2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER) pp. 216 - 226
Main Authors Li, Shuang, Li, Rui, Yu, Yifan, Yan, Kailun, Yang, Shihuai, Diao, Wenrui
Format Conference Proceeding
LanguageEnglish
Published IEEE 12.03.2024
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:The update of Android OS constantly brings users various new features and enhances system security. On the other hand, the system and API modifications with the update may introduce the app compatibility issue. The app's SDK version may not align with the Android OS version, making apps not work adequately. This condition will inevitably damage the Android ecosystem. Thus, while developing Android OS, Google considered and deployed compatibility support. The software engineering research community also noticed the Android compatibility issue and conducted some investigations. However, most previous studies focus on apps' performance and solutions on compatibility (apps running on multiple OS versions). Rare work considers the Android OS side's forward compatibility implementations (supporting legacy apps running on the latest OS). This work systematically studied how Android OS implements forward compatibility for the apps developed with outdated SDKs, primarily focusing on the targetSdkVersion-based fine-grained control. Specifically, we propose three research questions, covering: 1) the forward compatibility support approaches; 2) the stability of foforward compatibility support in third-party market apps. To address these questions, we conducted comprehensive measurements on Android's forward compatibility support, including its implementation, implications, and evolution. Our measurements were based on large-scale datasets covering the source code of Android 8.0~ 13 and 130,461 apps. Finally, we provide rich data support and analysis to answer these questions. This study offers new insights into Android's forward compatibility support, helping the research community understand the evolution of Android's API design.
ISSN:2640-7574
DOI:10.1109/SANER60148.2024.00029