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. This can be a single container or an array of containers |
RAPIDS provider¶
Available time segments and platforms
- Available for all time segments
- Available for Android and iOS
File Sequence
- 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), default is 6 hours. 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. |
Assumptions/Observations
-
In Android,
lockevents can happen right after anoffevent, after a few seconds of anoffevent, or never happen depending on the phone's settings, therefore, anunlockepisode is defined as the time between anunlockand aoffevent. In iOS,onandoffevents do not exist, so anunlockepisode is defined as the time between anunlockand alockevent. -
Events in iOS are recorded reliably albeit some duplicated
lockevents within milliseconds from each other, so we only keep consecutive unlock/lock pairs. In Android you cand find multiple consecutiveunlockorlockevents, 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 becauseACTION_SCREEN_OFFandACTION_SCREEN_ONaresent 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 anunlockevent as well as the total screen time (i.e.ONtoOFF) but these are not implemented at the moment. -
We transform iOS screen events to match Android’s format, we replace
lockepisodes withoffepisodes (2 with 0) in iOS. However, as mentioned above this is still computingunlocktolockepisodes.