List of Outages
Outages by Category
Behavioral
Outage Label | Description |
---|---|
location permission not determined | The worker did not grant location permissions in this case. On iOS 13 and beyond, the worker should open the app and allow location access choosing "Allow While in Use" then choose "Change to Always Allow" on the next step or go to Settings > App Name > Location and choose "Always". For older versions of iOS, the worker should open the app and allow location access choosing "Always". |
location unavailable battery saver | When the battery saver is turned on and the screen is locked, Android OS automatically disables location services. User needs to disable the battery saver when actively tracking. On Android, the worker should turn off Battery Saver in Settings > Battery > Battery saver. |
low battery | The worker's phone is turned off because of low battery. |
notifications permission denied | Notifications permission is denied by the worker in response to system prompt or in Settings > Apps > App Name > Notifications." |
airplane mode detected | The worker has activated airplane mode on the phone. |
uninstalled | HyperTrack detected that the worker uninstalled the app. |
location services disabled | The worker disabled location services globally in the phone. On iOS, the worker should remove location services restriction in Settings > Screen Time > Content & Privacy Restrictions > Location Services. On Android, the worker should turn on location services in Settings > Location > Use location. |
location permissions denied | The worker explicitly denied permissions in response to system prompt or in Settings > App Name > Location on iOS. On Android, the worker should change location permission to "Allow" in App Info > Permissions > Location. |
location permission imprecise | User did not grant precise location permissions or downgraded permissions to imprecise. For iOS: Open Settings, go to Privacy then Location Services, select an app, choose location access level, and toggle Precise Location on or off at the bottom. For Android: Open Settings, tap on Location then App permission, select an app, set location access, and enable or disable Use precise location. |
location permission restricted | The worker restricted location access. If it is iOS 13 and beyond, the worker should open the app and allow location access choosing "Allow While in Use" then choose "Change to Always Allow" on the next step or go to Settings > App Name > Location and choose "Always" . On Android, location permissions were restricted by the worker in Settings > Screen Time > Content & Privacy Restrictions > Location Services. |
location permission when in use background | The worker granted When In Use permissions which do not allow the SDK to start tracking from background; the SDK will start tracking as soon as the app is brought to the foreground. To start tracking remotely (REST API or Trips) the app needs "Always" permissions. This can be a sign of an integration error if the app only asks for "When In Use" permissions on iOS or Android 11 and beyond. |
location disabled battery saver | When the battery saver is turned on and the screen is locked, Android OS automatically disables location services. The worker needs to disable the battery saver when actively tracking. The worker must turn off Battery Saver in Settings > Battery > Battery saver on Android. |
tracking service terminated | HyperTrack SDK was tracking the worker when the app was killed by the worker or in some cases by the operating system. |
background refresh status denied | The worker explicitly disabled background behavior for this app or for the whole system. The app doesn't receive silent push notifications and in turn can't receive a command to start tracking. |
sdk killed by permissions location | The worker has changed location permissions in settings and the app was killed as a result. |
sdk killed by user | HyperTrack SDK was tracking the worker when the app was killed by the worker, by either swiping the app on iOS or explicitly killing the app on Android. The SDK reports this outage once the app is started again. |
Adversarial
Outage Label | Description |
---|---|
location mocked | The worker enabled mock location app while mocking locations is prohibited. |
time offset changed | The worker has manipulated time on the device in a fraud attempt. |
Operating System
Outage Reason | Description |
---|---|
os shutdown | HyperTrack SDK detected that operating system was rebooted. |
restart required | Location service stopped sending location data to the app. This can happen when device is tracking for a long time (more than 24 hours in a row). Make sure to only start and stop tracking during work hours. |
sdk killed by app update | The app was killed by a forced update. |
sdk killed low memory | On Android, the operating system ran low on memory and killed the app to free up memory. |
sdk killed by low power | The app was killed due to low battery. HyperTrack SDK reports this once the app is back online. |
sdk killed by os reboot | The app was killed by an operating system reboot. HyperTrack SDK reports this once the app is back online. |
sdk killed by os update | The app was killed by operating system update. This is reported once the app is back online and operational. |
sdk killed crashed | The app has crashed. Once the app is back online, HyperTrack SDK reports it, including the timestamp when this took place. |
sdk killed excessive resource usage | The app was excessively using CPU and the operating system killed it. HyperTrack SDK reports it, including the timestamp when this took place, once the app is launched and online. |
sdk killed app not responsive | The app was not responsive and the operating system killed the app. |
sdk killed suspended | The worker should make sure that battery is sufficiently charged, "Low Power Mode" is off in Settings > Battery and permissions are "Always" in Settings > App Name > Location. This can happen in rare case due to device being low on battery or when device has Provisional Always Authorization on iOS 13 and beyond. The worker should make sure to first request "When In Use" permissions and when they are granted to request "Always" permissions. On Android, the operating system paused executing application code. |
Sporadic
Outage Label | Description |
---|---|
gps connection lost | The worker needs to move outdoors to get better GPS signal and check if airplane mode is disabled as well. |
location unavailable | HyperTrack SDK was not able to get fresh location data from the device. The worker needs to move outdoors to get better GPS signal and check if airplane mode is disabled as well. |
Reachability
Outage Label | Description |
---|---|
location permission asked in background | Check the four possible reasons below: 1. The app didn't ask for permissions before starting tracking which is an integration error. Please make sure that your app asks for location permissions before there is a possibility that the worker can be tracked. 2. The worker chose Allow Once in the previous app session's location permission dialog. Every time a worker chooses Allow Once, the OS resets the permissions to not granted state after the app finishes execution. 3. The worker executed a permissions reset in Settings > General > Reset > Reset Location & Privacy.4. The worker may have changed permissions to Ask Next Time in Settings > App Name > Location before launching the app. |
location unavailable provisional authorization | The app asked for Always authorization without first asking for When In Use authorization. This puts an app in Provisional Always authorization where OS doesn't return a location when the app is in background (not showing on the screen). The OS is waiting to present the worker with a second prompt asking to choose "Always" or "When In Use" before returning location data to the SDK. In this instance the worker needs to go to Settings > App Name > Location and switch permissions to When In Use. The app should then switch to asking When In Use permissions first and then Always permissions right after the worker granted When In Use to avoid this outage in location data. |
push notification failed | HyperTrack sent a push notification to start tracking but it didn't reach this device. Use visual push notifications as a fallback to launch the app when you receive a disconnected outage via a webhook payload sent to your end point. |
push token missing to start tracking | On Android, Firebase messaging service didn't supply the app with the messaging token. Please make sure that push notifications are integrated correctly based on the integration guide. On iOS, HyperTrack can't reach this device to start tracking using push notifications because iOS didn't supply the app with device token in App Delegate. Please make sure that push notifications are integrated based on the integration guide. |
Updated 6 months ago