CQUniversity
Browse

Android compatibility issue detection using API differences

conference contribution
posted on 2024-06-16, 20:36 authored by T Mahmud, Meiru Che, G Yang
Android apps are developed using a Software Development Kit (SDK), where the Android application programming interface (API) enables app developers to harness the functionalities of Android devices by interacting with services and hardware. However, API frequently evolves together with its associated SDK. The mismatch between the API level supported by the device where apps are installed and the API level targeted by app developers can induce compatibility issues. These issues can manifest themselves as unexpected behaviors, including runtime crashes, creating a poor user experience. In this paper, we propose ACID, a novel approach to detecting compatibility issues caused by API evolution. We leverage API differences and static analysis of the source code of Android apps to detect both API invocation compatibility issues and API callback compatibility issues. Experiments on 20 benchmark apps from previous studies show that ACID is more accurate and faster in detecting compatibility issues than state-of-the-art. We also analyzed 35 more real-world apps to show the practical applicability of our approach.

History

Start Page

480

End Page

490

Number of Pages

11

Start Date

2021-03-09

Finish Date

2021-03-12

ISSN

1534-5351

ISBN-13

9781728196305

Location

Virtual

Publisher

IEEE

Place of Publication

Piscataway, NJ

Peer Reviewed

  • Yes

Open Access

  • No

Era Eligible

  • Yes

Name of Conference

IEEE International Conference on Software Analysis, Evolution and Reengineering

Parent Title

Proceedings - 2021 IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021

Usage metrics

    CQUniversity

    Exports

    RefWorks
    BibTeX
    Ref. manager
    Endnote
    DataCite
    NLM
    DC