## 2 Related Work
* _Material Design Guidelines_: Indicates if the application follows the HCI guidelines in order to meet the requirements related to usability. In particular, because we considered Android applications only, we checked if the application followed the Material Design Guidelines [36], which are a set of usability guidelines for the Android environment. All columns are populated with _Yes_, _No_, or -- if the corresponding characteristic was respectively present, not present, or unknown. Some of the applications provided a very limited set of features. For example, G-Sensor Logger [30] collects accelerations only, and Sensor Sense [40] acquires signals from only one sensor at a time, which can be chosen by the user. On the other hand, there were also more advanced applications, such as Sensor Data Logger [31], which allows signals to be registered from more than one sensor at a time (chosen by the user) and which can be paired with a Wear OS device. Apart from UniMiB AAL, only four applications allowed labeling of the acquired data: Sensor Data Collector [39], Activity Recognition Training [37], ExtraSensory [38], and Sensor Log [32]. Sensor Data Collector and Activity Recognition Training are both available on Google Play Store. Sensor Data Collector allows the user to specify the activity he/she is carrying out and his/her environment (e.g., home or street). The application saves the data in an SQLite database, which is stored in a non-public folder of the device. Activity Recognition Training is an application designed to generate datasets that can be used for activity recognition. The application allows the user to specify the beginning and the end of each activity. The data are saved in a single text file stored in a public folder of the device. Each row in the file is a pair: the sensor type and the corresponding acquired signal. ExtraSensory and Sensor Log are not available on Google Play Store, despite that the latter was present in the store until at least January 2018. ExtraSensory is an open-source project, and the source code for both the server-side and the Android application is available. The application was designed in order to build the ExtraSensory Dataset [38] and was then released to ease further data collection. The application combines unsupervised labeling (exploiting classifiers trained with the ExtraSensory Dataset) and self-reported labels by the user, both before the actions and as a post-activity inquiry. Sensor Log was developed to ease the process of collecting and labeling sensory data from smartphones. The recorded signals are stored in an SQLite database and can be exported in CSV (Comma-Separated Values) format. All four applications supporting labeling, in addition to supporting the acquisition of signals from inertial sensors, also allow data to be registered from other built-in sensors, such as temperature and pressure. Of these four applications, only ExtraSensory and Sensor Data Collector allow signals to be recorded from the sensors of both the smartphone and the possible paired Wear OS smartwatch; only Sensor Data Collector and Sensor Log allow the user to select the sensors to be used for acquisition. However, even if all four of these applications allow signals to be labeled, they are lacking in terms of satisfying some of the characteristics that we list at the beginning of this section, which are, on the contrary, fulfilled by UniMiB AAL. These characteristics are detailed in the following:  
* **Multi-Devices (Acq. & Lab. ):** The acquisition and labeling of the data happen on the same device. In the case of Sensor Log, Sensor Data Collector, and Activity Recognition Training,