Android Compatibility Issue Detection Using API Differences

被引:18
|
作者
Mahmud, Tarek [1 ]
Che, Meiru [2 ]
Yang, Guowei [1 ]
机构
[1] Texas State Univ, Dept Comp Sci, San Marcos, TX 78666 USA
[2] Concordia Univ Texas, Dept Comp Sci, Austin, TX USA
基金
美国国家科学基金会;
关键词
Android; Compatibility Issues; API evolution; API differences; Program analysis;
D O I
10.1109/SANER50967.2021.00051
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:480 / 490
页数:11
相关论文
共 50 条
  • [41] Automatically Detecting API-Induced Compatibility Issues in Android Apps: A Comparative Analysis (Replicability Study)
    Liu, Pei
    Zhao, Yanjie
    Cai, Haipeng
    Fazzini, Mattia
    Grundy, John
    Li, Li
    PROCEEDINGS OF THE 31ST ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2022, 2022, : 617 - 628
  • [42] On the Feasibility of Adversarial Sample Creation Using the Android System API
    Cara, Fabrizio
    Scalas, Michele
    Giacinto, Giorgio
    Maiorca, Davide
    INFORMATION, 2020, 11 (09)
  • [43] Bluetooth API Implementation into Android
    Konev, Sergey
    Stus, Anastasia
    Kasyanenko, Elena
    Dolgov, Vasiliy
    XIII INTERNATIONAL SCIENTIFIC-TECHNICAL CONFERENCE DYNAMIC OF TECHNICAL SYSTEMS (DTS-2017), 2017, 132
  • [44] ACAMA: Deep Learning-Based Detection and Classification of Android Malware Using API-Based Features
    Ko, Eunbyeol
    Kim, Jinsung
    Ban, Younghoon
    Cho, Haehyun
    Yi, Jeong Hyun
    SECURITY AND COMMUNICATION NETWORKS, 2021, 2021
  • [45] SDAC: A Slow-Aging Solution for Android Malware Detection Using Semantic Distance Based API Clustering
    Xu, Jiayun
    Li, Yingjiu
    Deng, Robert H.
    Xu, Ke
    IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, 2022, 19 (02) : 1149 - 1163
  • [46] How Android Developers Handle Evolution-induced API Compatibility Issues: A Large-scale Study
    Xia, Hao
    Zhang, Yuan
    Zhou, Yingtian
    Chen, Xiaoting
    Wang, Yang
    Zhang, Xiangyu
    Cui, Shuaishuai
    Hong, Geng
    Zhang, Xiaohan
    Yang, Min
    Yang, Zhemin
    2020 ACM/IEEE 42ND INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2020), 2020, : 886 - 898
  • [47] DroidAPIMiner: Mining API-Level Features for Robust Malware Detection in Android
    Aafer, Yousra
    Du, Wenliang
    Yin, Heng
    SECURITY AND PRIVACY IN COMMUNICATION NETWORKS, SECURECOMM 2013, 2013, 127 : 86 - 103
  • [48] A machine learning technique for Android malicious attacks detection based on API calls
    AL-Akhrasa, Mousa
    Alghamdib, Saud
    Omarc, Hani
    Alshareefb, Hazzaa
    DECISION SCIENCE LETTERS, 2024, 13 (01) : 29 - 44
  • [49] Accident and Road Quality Assessment using Android Google Maps API
    Bhatt, Prakhar
    Gupta, Saransh
    Singh, Prateek
    Dhiman, Preeti
    2017 IEEE INTERNATIONAL CONFERENCE ON COMPUTING, COMMUNICATION AND AUTOMATION (ICCCA), 2017, : 1061 - 1064
  • [50] A3: Assisting Android API Migrations Using Code Examples
    Lamothe, Maxime
    Shang, Weiyi
    Chen, Tse-Hsun
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2022, 48 (02) : 417 - 431