Static Analysis of Android Programs - Université de La Réunion
Conference Papers Year : 2011

Static Analysis of Android Programs

Abstract

Android is a programming language based on Java and an operating system for embedded or mobile devices whose upper layers are written in that language. It features an extended event-based library and dynamic inflation of graphical views from declarative XML layout files. A static analyzer for Android programs must consider such features, for correctness and precision. This article is an in-depth description of how we extended the Julia system, based on abstract interpretation, to run formally correct analyses of Android programs, of the difficulties that we faced and of the results that we obtained. Namely, we have analyzed with Julia the whole set of Android sample applications by Google and a few larger open-source programs. We have applied seven static analyses, including classcast, dead code, nullness and termination analysis. Julia has found, automatically, bugs and flaws both in the Google samples and in the open-source applications.

Keywords

Fichier principal
Vignette du fichier
Static_analysis_of_android_programs.pdf (212.55 Ko) Télécharger le fichier
Origin Explicit agreement for this submission
Loading...

Dates and versions

hal-01188018 , version 1 (09-11-2018)

Identifiers

  • HAL Id : hal-01188018 , version 1

Cite

Etienne Payet, Fausto Spoto. Static Analysis of Android Programs. 23rd International Conference on Automated Deduction (CADE'11), Jul 2011, Wroclaw, Poland. pp.439--445. ⟨hal-01188018⟩
97 View
193 Download

Share

More