Measuring the declared SDK versions and their consistency with API calls in android apps

Daoyuan WU*, Ximing LIU, Jiayun XU, David Lo, Debin GAO

*Corresponding author for this work

Research output: Book Chapters | Papers in Conference ProceedingsConference paper (refereed)Researchpeer-review

16 Citations (Scopus)

Abstract

Android has been the most popular smartphone system, with multiple platform versions (e.g., KITKAT and Lollipop) active in the market. To manage the application’s compatibility with one or more platform versions, Android allows apps to declare the supported platform SDK versions in their manifest files. In this paper, we make a first effort to study this modern software mechanism. Our objective is to measure the current practice of the declared SDK versions (which we term as DSDK versions afterwards) in real apps, and the consistency between the DSDK versions and their app API calls. To this end, we perform a three-dimensional analysis. First, we parse Android documents to obtain a mapping between each API and their corresponding platform versions. We then analyze the DSDK-API consistency for over 24K apps, among which we pre-exclude 1.3K apps that provide different app binaries for different Android versions through Google Play analysis. Besides shedding light on the current DSDK practice, our study quantitatively measures the two side effects of inappropriate DSDK versions: (i) around 1.8K apps have API calls that do not exist in some declared SDK versions, which causes runtime crash bugs on those platform versions; (ii) over 400 apps, due to claiming the outdated targeted DSDK versions, are potentially exploitable by remote code execution. These results indicate the importance and difficulty of declaring correct DSDK, and our work can help developers fulfill this goal.

Original languageEnglish
Title of host publicationWireless Algorithms, Systems, and Applications: 12th International Conference, WASA 2017, Guilin, China, June 19-21, 2017, Proceedings
EditorsLiran MA, Abdallah KHREISHAH, Yan ZHANG, Mingyuan YAN
PublisherSpringer, Cham
Pages678-690
Number of pages13
ISBN (Electronic)9783319600338
ISBN (Print)9783319600321
DOIs
Publication statusPublished - 9 Jun 2017
Externally publishedYes
Event12th International Conference on Wireless Algorithms, Systems, and Applications - Guilin, China
Duration: 19 Jun 201721 Jun 2017

Publication series

NameLecture Notes in Computer Science
Volume10251
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference12th International Conference on Wireless Algorithms, Systems, and Applications
Abbreviated titleWASA 2017
Country/TerritoryChina
CityGuilin
Period19/06/1721/06/17

Bibliographical note

Publisher Copyright:
© Springer International Publishing AG 2017.

Keywords

  • Android app security
  • Android bug detection

Fingerprint

Dive into the research topics of 'Measuring the declared SDK versions and their consistency with API calls in android apps'. Together they form a unique fingerprint.

Cite this