Android SDK Features
The Memfault Android SDK collects many types of data from a device. Below is a description of each, and any caveats to their availability.
The Quickstart APK can collect a subset of data compared to the full SDK - this is referenced below.
โ | Not supported |
โ | Supported |
๐งต | Requires optional AOSP patch |
โ | Partial support |
๐ | Deprecated |
Feature | Quickstart APK | Full Android SDK | Fleet Sampling Aspect |
Core Metrics Battery Life, Stable Hours and Connectivity Core Metrics are collected by Bort. These are automatically processed to provide a set of key insights ("Device Vitals") across your fleet. See documentation. | โ | โ | Debugging + Monitoring |
OTA The Bort OTA update client is not available in the Android Quickstart APK (several permissions and SELinux configurations are not available). See documentation. | โ | โ | N/A |
Periodic Log Collection The Android SDK can collect | Android 8-12 โ
| โ | Debugging + Logging |
Continuous Log Collection The | โ | Android 8-10 ๐งต
| Debugging + Logging |
Battery Metrics (when device has a battery and is charging/discharging) Bort collects metrics from the Android | โ | โ | Debugging + Monitoring |
Battery Metrics (when device is powered-and-not-charging, or does not have a battery) Battery metrics are also available when a device is not
discharging/discharging, or when the device does not have a battery,
when applying an optional AOSP
patch.
This may seem unnecessary, but | โ | ๐งต | Debugging + Monitoring |
Metrics Metrics can be reported using our | โ | โ | Debugging + Monitoring |
High-Resolution Telemetry All reported metrics (both built-in and custom) are displayed on the device timeline in high resolution. See documentation. | โ | โ | Debugging |
Java App Crashes Java app crashes are collected from | โ | โ | Debugging |
Tombstones (Native Crashes) Tombstones (native service or application crashes) are collected from
| โ | โ | Debugging |
Tombstone symbolication Native stacktraces can be symbolicated in the Memfault dashboard (if symbols have been uploaded using the CLI) when this optional AOSP patch is applied. This adds the GNU Build ID to every stack frame. | โ | Android 8-9 โ | Debugging |
ANRs ANRs (Application Not Responding errors) are collected from
| โ | โ | Debugging |
Last KMSG The last KMSG logs (kernel logs before a device crash/kernel panic) are
collected from | โ | โ | Debugging |
WTFs WTFs (What a Terrible Failure โ | โ | โ | Debugging |
Reboots Bort will check | โ | โ | N/A |
Reboot Reason The reboot reason is only available from Android 9+ (sourced from
| โ | Android 8 โ | N/A |
Device Temperature Metrics The Usage Reporter app collects device/CPU temperature metrics from
| โ | โ | Debugging + Monitoring |
Connectivity Metrics The Android Quickstart APK will only capture connectivity changes while the Bort app is running. See documentation. | โ๏ธ | โ | Debugging + Monitoring |
Sysprop Metrics The Android Quickstart APK can only capture sysprops that it has the appropriate SELinux permission to read. See documentation. | โ๏ธ | โ | Monitoring |
Other Built-in Metrics Bort collects network usage, app versions, storage usage, and more. See documentation. | โ | โ | Debugging + Monitoring |
SDK Settings Sync Bort will periodically fetch the scrubbing rules, SDK Settings, and fleet sampling configuration from Memfault, allowing remote configuration of SDK behaviour and data collection. | โ | โ | N/A |
Client/Server Mode If multiple Android devices are connected together, the Android SDK can proxy data between them for upload from a single device. See documentation. | โ | โ | N/A |
Bugreport The Android SDK can capture bugreports, containing full
| โ | โ | Debugging |
Minimal Mode Bugreport
| โ | ๐งต | Debugging |
Custom Events Custom Events are deprecated, and replaced by Metric Events. See documentation. | โ | ๐ | Debugging |
Device Serial The default device identifier ( | โ | โ | N/A |
Hardware Type/OS Version Sysprops used for hardware type and OS version are generally readable by The Android Quickstart APK, depending on how the project is configured. | โ | โ | N/A |