4.7 KiB
Phone Screen
Sensor parameters description for [PHONE_SCREEN]
:
Key | Description |
---|---|
[CONTAINER] |
Data stream container (database table, CSV file, etc.) where the screen data is stored |
RAPIDS provider
!!! info "Available time segments and platforms" - Available for all time segments - Available for Android and iOS
!!! info "File Sequence"
bash - data/raw/{pid}/phone_screen_raw.csv - data/raw/{pid}/phone_screen_with_datetime.csv - data/interim/{pid}/phone_screen_episodes.csv - data/interim/{pid}/phone_screen_episodes_resampled.csv - data/interim/{pid}/phone_screen_episodes_resampled_with_datetime.csv - data/interim/{pid}/phone_screen_features/phone_screen_{language}_{provider_key}.csv - data/processed/features/{pid}/phone_screen.csv
Parameters description for [PHONE_SCREEN][PROVIDERS][RAPIDS]
:
Key | Description |
---|---|
[COMPUTE] |
Set to True to extract PHONE_SCREEN features from the RAPIDS provider |
[FEATURES] |
Features to be computed, see table below |
[REFERENCE_HOUR_FIRST_USE] |
The reference point from which firstuseafter is to be computed, default is midnight |
[IGNORE_EPISODES_SHORTER_THAN] |
Ignore episodes that are shorter than this threshold (minutes). Set to 0 to disable this filter. |
[IGNORE_EPISODES_LONGER_THAN] |
Ignore episodes that are longer than this threshold (minutes). Set to 0 to disable this filter. |
[EPISODE_TYPES] |
Currently we only support unlock episodes (from when the phone is unlocked until the screen is off) |
Features description for [PHONE_SCREEN][PROVIDERS][RAPIDS]
:
Feature | Units | Description |
---|---|---|
sumduration | minutes | Total duration of all unlock episodes. |
maxduration | minutes | Longest duration of any unlock episode. |
minduration | minutes | Shortest duration of any unlock episode. |
avgduration | minutes | Average duration of all unlock episodes. |
stdduration | minutes | Standard deviation duration of all unlock episodes. |
countepisode | episodes | Number of all unlock episodes |
firstuseafter | minutes | Minutes until the first unlock episode. |
!!! note "Assumptions/Observations"
1. In Android, lock
events can happen right after an off
event, after a few seconds of an off
event, or never happen depending on the phone's settings, therefore, an unlock
episode is defined as the time between an unlock
and a off
event. In iOS, on
and off
events do not exist, so an unlock
episode is defined as the time between an unlock
and a lock
event.
2. Events in iOS are recorded reliably albeit some duplicated `lock` events within milliseconds from each other, so we only keep consecutive unlock/lock pairs. In Android you cand find multiple consecutive `unlock` or `lock` events, so we only keep consecutive unlock/off pairs. In our experiments these cases are less than 10% of the screen events collected and this happens because `ACTION_SCREEN_OFF` and `ACTION_SCREEN_ON` are `sent when the device becomes non-interactive which may have nothing to do with the screen turning off`. In addition to unlock/off episodes, in Android it is possible to measure the time spent on the lock screen before an `unlock` event as well as the total screen time (i.e. `ON` to `OFF`) but these are not implemented at the moment.
3. We transform iOS screen events to match Android's format, we replace `lock` episodes with `off` episodes (2 with 0) in iOS. However, as mentioned above this is still computing `unlock` to `lock` episodes.