A large-scale study of application incompatibilities in Android

Haipeng Cai, Ziyi Zhang, Li Li, Xiaoqin Fu

Research output: Chapter in Book/Report/Conference proceedingConference PaperResearchpeer-review

Abstract

The rapid expansion of the Android ecosystem is accompanied by continuing diversification of platforms and devices, resulting in increasing incompatibility issues which damage user experiences and impede app development productivity. In this paper, we conducted a large-scale, longitudinal study of compatibility issues in 62,894 benign apps developed in the past eight years, to understand the symptoms and causes of these issues. We further investigated the incompatibilities that are actually exercised at runtime through the system logs and execution traces of 15,045 apps. Our study revealed that, among others, (1) compatibility issues were prevalent and persistent at both installation and run time, with greater prevalence of run-time incompatibilities, (2) there were no certain Android versions that consistently saw more or less app incompatibilities than others, (3) installation-time incompatibilities were strongly correlated with the minSdkVersion specified in apps, while run-time incompatibilities were most significantly correlated with the underlying platform’s API level, and (4) installation-time incompatibilities were mostly due to apps’ use of architecture-incompatible native libraries, while run-time incompatibilities were mostly due to API changes during SDK evolution. We offered further insights into app incompatibilities, as well as recommendations on dealing with the issues for bother developers and end users of Android apps.

Original languageEnglish
Title of host publicationProceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis
EditorsDongmei Zhang, Anders Moller
Place of PublicationNew York NY USA
PublisherAssociation for Computing Machinery (ACM)
Pages216-227
Number of pages12
ISBN (Electronic)9781450362245
DOIs
Publication statusPublished - 2019
EventInternational Symposium on Software Testing and Analysis 2019 - Beijing, China
Duration: 15 Jul 201919 Jul 2019
Conference number: 28th
https://conf.researchr.org/home/issta-2019

Conference

ConferenceInternational Symposium on Software Testing and Analysis 2019
Abbreviated titleISSTA 2019
CountryChina
CityBeijing
Period15/07/1919/07/19
Internet address

Keywords

  • Android
  • Compatibility
  • Installation failure
  • Run-time failure

Cite this

Cai, H., Zhang, Z., Li, L., & Fu, X. (2019). A large-scale study of application incompatibilities in Android. In D. Zhang, & A. Moller (Eds.), Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis (pp. 216-227). New York NY USA: Association for Computing Machinery (ACM). https://doi.org/10.1145/3293882.3330564
Cai, Haipeng ; Zhang, Ziyi ; Li, Li ; Fu, Xiaoqin. / A large-scale study of application incompatibilities in Android. Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis. editor / Dongmei Zhang ; Anders Moller. New York NY USA : Association for Computing Machinery (ACM), 2019. pp. 216-227
@inproceedings{4e4b81a9c44a4475b9d1b792407be213,
title = "A large-scale study of application incompatibilities in Android",
abstract = "The rapid expansion of the Android ecosystem is accompanied by continuing diversification of platforms and devices, resulting in increasing incompatibility issues which damage user experiences and impede app development productivity. In this paper, we conducted a large-scale, longitudinal study of compatibility issues in 62,894 benign apps developed in the past eight years, to understand the symptoms and causes of these issues. We further investigated the incompatibilities that are actually exercised at runtime through the system logs and execution traces of 15,045 apps. Our study revealed that, among others, (1) compatibility issues were prevalent and persistent at both installation and run time, with greater prevalence of run-time incompatibilities, (2) there were no certain Android versions that consistently saw more or less app incompatibilities than others, (3) installation-time incompatibilities were strongly correlated with the minSdkVersion specified in apps, while run-time incompatibilities were most significantly correlated with the underlying platform’s API level, and (4) installation-time incompatibilities were mostly due to apps’ use of architecture-incompatible native libraries, while run-time incompatibilities were mostly due to API changes during SDK evolution. We offered further insights into app incompatibilities, as well as recommendations on dealing with the issues for bother developers and end users of Android apps.",
keywords = "Android, Compatibility, Installation failure, Run-time failure",
author = "Haipeng Cai and Ziyi Zhang and Li Li and Xiaoqin Fu",
year = "2019",
doi = "10.1145/3293882.3330564",
language = "English",
pages = "216--227",
editor = "Dongmei Zhang and Anders Moller",
booktitle = "Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis",
publisher = "Association for Computing Machinery (ACM)",
address = "United States of America",

}

Cai, H, Zhang, Z, Li, L & Fu, X 2019, A large-scale study of application incompatibilities in Android. in D Zhang & A Moller (eds), Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis. Association for Computing Machinery (ACM), New York NY USA, pp. 216-227, International Symposium on Software Testing and Analysis 2019, Beijing, China, 15/07/19. https://doi.org/10.1145/3293882.3330564

A large-scale study of application incompatibilities in Android. / Cai, Haipeng; Zhang, Ziyi; Li, Li; Fu, Xiaoqin.

Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis. ed. / Dongmei Zhang; Anders Moller. New York NY USA : Association for Computing Machinery (ACM), 2019. p. 216-227.

Research output: Chapter in Book/Report/Conference proceedingConference PaperResearchpeer-review

TY - GEN

T1 - A large-scale study of application incompatibilities in Android

AU - Cai, Haipeng

AU - Zhang, Ziyi

AU - Li, Li

AU - Fu, Xiaoqin

PY - 2019

Y1 - 2019

N2 - The rapid expansion of the Android ecosystem is accompanied by continuing diversification of platforms and devices, resulting in increasing incompatibility issues which damage user experiences and impede app development productivity. In this paper, we conducted a large-scale, longitudinal study of compatibility issues in 62,894 benign apps developed in the past eight years, to understand the symptoms and causes of these issues. We further investigated the incompatibilities that are actually exercised at runtime through the system logs and execution traces of 15,045 apps. Our study revealed that, among others, (1) compatibility issues were prevalent and persistent at both installation and run time, with greater prevalence of run-time incompatibilities, (2) there were no certain Android versions that consistently saw more or less app incompatibilities than others, (3) installation-time incompatibilities were strongly correlated with the minSdkVersion specified in apps, while run-time incompatibilities were most significantly correlated with the underlying platform’s API level, and (4) installation-time incompatibilities were mostly due to apps’ use of architecture-incompatible native libraries, while run-time incompatibilities were mostly due to API changes during SDK evolution. We offered further insights into app incompatibilities, as well as recommendations on dealing with the issues for bother developers and end users of Android apps.

AB - The rapid expansion of the Android ecosystem is accompanied by continuing diversification of platforms and devices, resulting in increasing incompatibility issues which damage user experiences and impede app development productivity. In this paper, we conducted a large-scale, longitudinal study of compatibility issues in 62,894 benign apps developed in the past eight years, to understand the symptoms and causes of these issues. We further investigated the incompatibilities that are actually exercised at runtime through the system logs and execution traces of 15,045 apps. Our study revealed that, among others, (1) compatibility issues were prevalent and persistent at both installation and run time, with greater prevalence of run-time incompatibilities, (2) there were no certain Android versions that consistently saw more or less app incompatibilities than others, (3) installation-time incompatibilities were strongly correlated with the minSdkVersion specified in apps, while run-time incompatibilities were most significantly correlated with the underlying platform’s API level, and (4) installation-time incompatibilities were mostly due to apps’ use of architecture-incompatible native libraries, while run-time incompatibilities were mostly due to API changes during SDK evolution. We offered further insights into app incompatibilities, as well as recommendations on dealing with the issues for bother developers and end users of Android apps.

KW - Android

KW - Compatibility

KW - Installation failure

KW - Run-time failure

UR - http://www.scopus.com/inward/record.url?scp=85070616257&partnerID=8YFLogxK

U2 - 10.1145/3293882.3330564

DO - 10.1145/3293882.3330564

M3 - Conference Paper

SP - 216

EP - 227

BT - Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis

A2 - Zhang, Dongmei

A2 - Moller, Anders

PB - Association for Computing Machinery (ACM)

CY - New York NY USA

ER -

Cai H, Zhang Z, Li L, Fu X. A large-scale study of application incompatibilities in Android. In Zhang D, Moller A, editors, Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis. New York NY USA: Association for Computing Machinery (ACM). 2019. p. 216-227 https://doi.org/10.1145/3293882.3330564