Pendo Mobile SDKs operate in a dynamic environment: many times, end-users don't have network connectivity when the app launches, or the app might lose the network connection in the middle of a 'session'.
To ensure intact delivery of usage analytics regardless of the network condition, the SDKs continue collecting analytics regardless of the connectivity status.
- As long as a network connection is available, the SDK sends the usage analytics data in bulk to avoid load on the mobile device's network.
- If the network connection is unavailable, the SDK keeps collecting analytics and saves them on the device. To make sure that the app does not consume too much space, there is a default limit of 10MB for these saved analytics. This space is used as first-in-first-out if the entire space is used.
- The 10MB space on the device can be adjusted per app by a support ticket - use this for apps that are supposed to be offline for longer time periods.
- Once the Internet connection is restored, the SDK is notified and then sends all saved analytics to the Pendo server.
Note: If you require a different storage size for a specific app, contact our Support team.
What about guides?
- If the connection was not present at the time of initSDK() call, no guides will be shown to the user.
- If the network connectivity existed during initSDK() call, and all guide images were downloaded before the network connectivity was lost, guides will be presented to the users until the next session starts (after 30 minutes in the background or upon a relaunch of the app the SDK re-initiates against the Pendo backend to re-fetch the guides).