The Applications sensor logs application and notifications usage on the device. It captures every time the user changes from an application and keeps track of what is running in the background. It may also monitor any new application’s notifications and capture when an application has crashed.

Settings

  • Aware_Preferences.STATUS_APPLICATIONS: true or false to activate or deactivate application usage (e.g., foreground, history).
  • Aware_Preferences.STATUS_NOTIFICATIONS: true or false to activate or deactivate application notifications sensor.
  • Aware_Preferences.STATUS_CRASHES: true of false to activate or deactivate application crashes sensor.
It is mandatory to activate the AWARE Accessibility Service on your device in “Settings > Accessibility > AWARE” if you want to track application usage. This enables and ensures an energy-efficient, event-driven application monitoring.

aware-broadcasts

  • Applications.ACTION_AWARE_APPLICATIONS_FOREGROUND: broadcasted when a new application is on the foreground.
  • Applications.ACTION_AWARE_APPLICATIONS_HISTORY: broadcasted when all application usage is updated. Updated every 30 seconds.
  • Applications.ACTION_AWARE_APPLICATIONS_NOTIFICATIONS: broadcasted when a new notification is displayed.
  • Applications.ACTION_AWARE_APPLICATIONS_CRASHES: broadcasted when an application has crashed.

aware-providers

Applications Foreground

Contains the log of in-use applications (i.e., applications the user is currently interacting with).

Applications_Foreground.CONTENT_URI
content://com.aware.provider.applications/applications_foreground

Table field Field type Description
_id INTEGER Primary key, auto incremented
timestamp REAL Unixtime milliseconds since 1970
device_id TEXT AWARE device UUID
package_name TEXT Application’s package name
application_name TEXT Application’s localized name
is_system_app BOOLEAN Device’s pre-installed application

Applications History

Contains the log of all application usage statuses (e.g., foreground, background). NOTE: does not work since Lollipop (Android 5.x+) due to security and privacy changes in Android.

Applications_History.CONTENT_URI
content://com.aware.provider.applications/applications_history

Table field Field type Description
_id INTEGER primary key, auto incremented
timestamp REAL unixtime milliseconds since 1970
device_id TEXT AWARE device UUID
package_name TEXT Application’s package name
application_name TEXT Application’s localized name
process_importance INTEGER One of the Android process importance values
process_id INTEGER The ID of the application on Android’s process stack. Used to identify ended application sessions.
end_timestamp REAL unixtime in milliseconds of when the application terminated or a change in the process importance.
is_system_app BOOLEAN Device’s pre-installed application

Applications Notifications

Contains the log of application notifications.

Applications_Notifications.CONTENT_URI
content://com.aware.provider.applications/applications_notifications

Table field Field type Description
_id INTEGER primary key, auto incremented
timestamp REAL unixtime milliseconds since 1970
device_id TEXT AWARE device UUID
package_name TEXT Application’s package name
application_name TEXT Application’s localized name
text TEXT Notification’s header text, not the content.
sound TEXT Notification’s sound source (if applicable)
vibrate TEXT Notification’s vibration pattern (if applicable)
defaults TEXT If notification was delivered according to device’s default settings.
flags INTEGER From Android’s notification flags

Applications Crashes

Log of crashed applications.

Applications_Crashes.CONTENT_URI
content://com.aware.provider.applications/applications_crashes
Table field Field type Description
_id INTEGER primary key, auto incremented
timestamp REAL unixtime milliseconds since 1970
device_id TEXT AWARE device UUID
package_name TEXT Application’s package name
application_name TEXT Application’s localized name
application_version REAL Application’s version code
error_short TEXT Short description of the error
error_long TEXT More verbose version of the error description
error_condition INTEGER 1 = code error; 2 = non-responsive (ANR error)
is_system_app BOOLEAN Device’s pre-installed application
Applications