FILO: FIx-LOcus Recommendation for Problems Caused by Android Framework Upgrade

11/21/2019
by   Marco Mobilio, et al.
0

Dealing with the evolution of operating systems is challenging for developers of mobile apps, who have to deal with frequent upgrades that often include backward incompatible changes of the underlying API framework. As a consequence of framework upgrades, apps may show misbehaviours and unexpected crashes once executed within an evolved environment. Identifying the portion of the app that must be modified to correctly execute on a newly released operating system can be challenging. Although incompatibilities are visibile at the level of the interactions between the app and its execution environment, the actual methods to be changed are often located in classes that do not directly interact with any external element. To facilitate debugging activities for problems introduced by backward incompatible upgrades of the operating system, this paper presents FILO, a technique that can recommend the method that must be changed to implement the fix from the analysis of a single failing execution. FILO can also select key symptomatic anomalous events that can help the developer understanding the reason of the failure and facilitate the implementation of the fix. Our evaluation with multiple known compatibility problems introduced by Android upgrades shows that FILO can effectively and efficiently identify the faulty methods in the apps.

READ FULL TEXT
research
12/31/2020

FILO: FIx-LOcus Localization for Backward Incompatibilities Caused by Android Framework Upgrades

Mobile operating systems evolve quickly, frequently updating the APIs th...
research
03/17/2021

AndroidCompass: A Dataset of Android Compatibility Checks in Code Repositories

Many developers and organizations implement apps for Android, the most w...
research
05/27/2019

A Benchmark of Data Loss Bugs for Android Apps

Android apps must be able to deal with both stop events, which require i...
research
10/12/2020

Data Loss Detector: Automatically Revealing Data Loss Bugs in Android Apps

Android apps must work correctly even if their execution is interrupted ...
research
12/30/2019

Scalable Online Vetting of Android Apps for Measuring Declared SDK Versions and Their Consistency with API Calls

Android has been the most popular smartphone system with multiple platfo...
research
05/23/2020

When Program Analysis Meets Bytecode Search: Targeted and Efficient Inter-procedural Analysis of Modern Android Apps in BackDroid

Widely-used Android static program analysis tools, e.g., Amandroid and F...
research
02/05/2020

A Framework for In-Vivo Testing of Mobile Applications

The ecosystem in which mobile applications run is highly heterogeneous a...

Please sign up or login with your details

Forgot password? Click here to reset