A single Android app is an app family supposed to work well on diverse, heterogeneous devices and on different versions of the operating system. This means that some problems can only be discovered when the app is run on a particular device and a specific version of the operating system. The availability of device data, set preferences, execution logs, measured performance, and actual activity layouts is key for identifying and scoping these problems. The more data one can collect, and analyze, the more accurate fault identification can be. Android does not ease the collection of these data and existing tools -to the best of our knowledge- have huge limitations (e.g., restrictions imposed by the execution model or security constraints). To overcome them, and provide a viable solution, the paper proposes a dedicated library called IDEA (Inclusive Data Extraction for Android). If IDEA is used while implementing the app, a dedicated service can be activated on the device, collects all the aforementioned data, and sends them to a user-defined server, which can then carry out the appropriate analyses. The paper summarizes the limitations that motivated the development of a library, describes what IDEA provides, and presents a first assessment. While we are aware that imposing the use of IDEA for implementing monitorable Android apps can be seen as a quite strong requirement, we are also confident that the benefits can pay off.

IDEA: Runtime Collection of Android Data

Baresi, Luciano;Caushi, Kostandin
2021-01-01

Abstract

A single Android app is an app family supposed to work well on diverse, heterogeneous devices and on different versions of the operating system. This means that some problems can only be discovered when the app is run on a particular device and a specific version of the operating system. The availability of device data, set preferences, execution logs, measured performance, and actual activity layouts is key for identifying and scoping these problems. The more data one can collect, and analyze, the more accurate fault identification can be. Android does not ease the collection of these data and existing tools -to the best of our knowledge- have huge limitations (e.g., restrictions imposed by the execution model or security constraints). To overcome them, and provide a viable solution, the paper proposes a dedicated library called IDEA (Inclusive Data Extraction for Android). If IDEA is used while implementing the app, a dedicated service can be activated on the device, collects all the aforementioned data, and sends them to a user-defined server, which can then carry out the appropriate analyses. The paper summarizes the limitations that motivated the development of a library, describes what IDEA provides, and presents a first assessment. While we are aware that imposing the use of IDEA for implementing monitorable Android apps can be seen as a quite strong requirement, we are also confident that the benefits can pay off.
2021
32nd IEEE International Symposium on Software Reliability Engineering Workshops, ISSREW 2021
978-1-6654-2603-9
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11311/1203574
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 0
  • ???jsp.display-item.citation.isi??? 0
social impact