NChecker: Saving mobile app developers from network disruptions

Xinxin Jin, Peng Huang, Tianyin Xu, Yuanyuan Zhou

Research output: Chapter in Book/Report/Conference proceedingConference contribution


Most of today's mobile apps rely on the underlying networks to deliver key functions such as web browsing, file synchronization, and social networking. Compared to desktop-based networks, mobile networks are much more dynamic with frequent connectivity disruptions, network type switches, and quality changes, posing unique programming challenges for mobile app developers. As revealed in this paper, many mobile app developers fail to handle these intermittent network conditions in the mobile network programming. Consequently, network programming defects (NPDs) are pervasive in mobile apps, causing bad user experiences such as crashes, data loss, etc. Despite the development of network libraries in the hope of lifting the developers' burden, we observe that many app developers fail to use these libraries properly and still introduce NPDs. In this paper, we study the characteristics of the realworld NPDs in Android apps towards a deep understanding of their impacts, root causes, and code patterns. Driven by the study, we build NChecker, a practical tool to detect NPDs by statically analyzing Android app binaries. NChecker has been applied to hundreds of real Android apps and detected 4180 NPDs from 285 randomly-selected apps with a 94+% accuracy. Our further analysis of these defects reveals the common mistakes of app developers in working with the existing network libraries' abstractions, which provide insights for improving the usability of mobile network libraries.

Original languageEnglish (US)
Title of host publicationProceedings of the 11th European Conference on Computer Systems, EuroSys 2016
PublisherAssociation for Computing Machinery, Inc
ISBN (Electronic)9781450342407
StatePublished - Apr 18 2016
Externally publishedYes
Event11th European Conference on Computer Systems, EuroSys 2016 - London, United Kingdom
Duration: Apr 18 2016Apr 21 2016

Publication series

NameProceedings of the 11th European Conference on Computer Systems, EuroSys 2016


Other11th European Conference on Computer Systems, EuroSys 2016
Country/TerritoryUnited Kingdom

ASJC Scopus subject areas

  • Information Systems
  • Computer Networks and Communications
  • Hardware and Architecture
  • Software


Dive into the research topics of 'NChecker: Saving mobile app developers from network disruptions'. Together they form a unique fingerprint.

Cite this