-
Notifications
You must be signed in to change notification settings - Fork 67
Analytics
The Android SDK contains an analytics module that replicates most of the functionality of server-side analytics, at least as far as the evaluation of the visualizations is concerned. This is one of the most complex modules in the SDK.
In opposition to server-side analytics, the Android SDK does not generate analytics tables (DB tables especially designed for fast analysis). Given that the Android app only contains a subset of the data available in the system (the data assigned to the user), we can assume that the number of records will be limited. Also, there is no concurrent data entry and data analysis because there is a single user performing actions in the Android app. Because of that, the analytics module targets the standard data tables when performing the analysis.
In short, the analytics module performs the following steps:
- Collection of evaluation parameters: dimensions and filters, relative or absolute, legends, etc.
- Resolution of relative parameters.
- Translation to evaluation item, which can be visually conceived as a cell in a table report. This evaluation item contains a list of dimensions (rows and columns) and filters.
- Evaluation of each item. It can be directly translated to a SQL or it might need the use of the parser to evaluate the expression.
- Application of the legend, when applicable.
The following HTML file has been generated with Claude AI and offers a detailed description of the phases involved.