Huaxun Huang, Chi Xu, Ming Wen 0001, Yepang Liu 0001, Shing-Chi Cheung
Software Engineering Empirical Research Radar
ConfFix: Repairing Configuration Compatibility Issues in Android Apps.
Paper detail page in SEER Radar.
ISSTA 2023
Debugging / Fault Localization / Diagnosis / Repair; DevOps / CI / Build / Release; Mobile / Web / GUI / Android
Abstract / Summary
XML configuration files are widely-used to specify the user interfaces (UI) of Android apps. Configuration compatibility (CC) issues are induced owing to the inconsistent handling of such XML configuration files across different Android framework versions. CC issues can cause software crashes and inconsistent look-and-feels, severely impacting the user experience of Android apps. However, there is no universal solution to resolve CC issues and app developers need to handle CC issues case by case. Existing tools are designed based on predefined rules or visual features that are possibly manifested by CC issues. Unfortunately, they can fail or generate overfitting patches when the CC issues are beyond their capabilities. To fill the above research gaps, we first empirically studied the app developers' common strategies in patching real-world CC issues. Based on the findings, we propose ConfFix, an automatic approach to repair CC issues in Android apps. ConfFix is driven by the knowledge of how an XML element is handled inconsistently in different versions of the Android framework and generates patches to eliminate such inconsistencies. We evaluated ConfFix on a set of 77 reproducible CC issues in 13 open-source Android apps. The results show that ConfFix outperforms baselines in successfully repairing 64 CC issues with a high precision. Encouragingly, the patches for 38 CC issues have been confirmed and merged by app developers.
External Links
Local PDF is not available on SEER Radar yet. When a public source is recorded, this page will add a local reading link with source attribution.