Offline mode

A filled survey's content value is of huge significance and Medallia make every effort to properly collect feedback and submit it, even in extreme scenarios.

Some of the most frustrating usage scenarios which require collecting feedback are potentially when the mobile device is offline. For example, during train rides, flights, travel network issues, and so on. The offline feature provides apps with the ability to initialize the SDK in order to engage users during such critical scenarios without a network connection and let end-users provide feedback. As soon as a network connection is established the feedback is submitted to Medallia.

The offline support of the SDK is split into the following main abilities.

SDK Offline Initialization Flow

The SDK stores the last instance in which the SDK was initialized to enable offline support:

  • Last Init - Store last Init call along with configuration data
  • Override - Always override previous Init call and configuration with a new Init call and configuration
  • Expiration - The SDK will delete the stored data after an extended offline duration

SDK Local Survey Repository Manager

Whether the device is online or offline, the SDK utilizes a smart local repository manager of surveys to optimize performance. This module is completely local and therefore offline supported.

  • All survey forms are downloaded locally to the device
  • A shared template of the form visual components is downloaded locally to the device
  • An offline WebView renders the form within the app
Important: Important: The Webview's sole purpose is to render the survey form. It does not make any external calls whatsoever.

SDK Offline Feedback Submission Flow

The SDK stores the submitted feedback of a device which is offline.

  • Data is protected and encrypted as it is kept in a manner which makes it not accessible when extracted
  • The stored feedback will be maintained with a retry mechanism
  • The stored feedback will be deleted after an extended duration
  • The SDK will submit the feedback in the next online session (and not the WebView)