Secure Storage Handling Guidelines

šŸ”’ Secure Storage Handling Guidelines (iOS & Android)

The REL-ID SDK securely stores sensitive data—such as user identifiers, session state, and device binding information—using platform-specific secure storage mechanisms:

  • iOS: Keychain
  • Android: Keystore, Encrypted SharedPreferences, or Secure Storage

This secure data is critical for maintaining consistent SDK behavior across sessions, app launches, and even app re-installs.


1. When Modifying Secure Storage

If your app interacts with secure storage, follow these best practices:

  • āŒ Do not clear SDK-managed secure data unless absolutely necessary.

  • āœ… Only manage app-specific entries—never modify data created or owned by the SDK.

  • šŸ“± App Reinstallation Consideration:

    • iOS may retain secure storage data across re-installs.
    • Your app must detect and handle existing SDK data after reinstalling.
  • āš ļø Avoid global resets of secure storage during:

    • First-time app launch
    • New user registration
  • šŸ‘„ Multi-user Support:
    Handle user-specific tokens or credentials at the app level. Only wipe SDK data if you intend to fully reset the SDK.


2. If SDK Secure Data Is Accidentally Cleared

Clearing SDK-managed data may result in:

  • šŸ”„ Disrupted login/session flows as key identifiers are lost.
  • šŸ“± Device treated as new, triggering reactivation
  • ā“ Silent SDK failures or inconsistent behavior

3. Recommendations

  • āœ… Scope all secure storage operations to app-owned entries only
  • āš ļø Only clear secure storage if performing a full app reset, and ensure the SDK is re-initialized afterward
  • šŸ“£ Share these guidelines with all teams (Development, QA, etc.) to prevent accidental disruption