Troubleshooting Mobile SDK Errors

Events don't appear in Triple Whale

Check these in order:

  1. init() was called with the correct shopName before any tracking method. Calls before init() short-circuit silently.
  2. Consent status is not DENIED. Run await TriplePixel.getConsentStatus() and confirm it returns 'GRANTED' or 'UNKNOWN'.
  3. The device has network connectivity. The SDK retries with exponential backoff but drops events after 5 failed attempts.
  4. Allow a few minutes. Events can take a few minutes to appear in the Triple Whale dashboard.

React Native: [TriplePixel] ... : native module not available

The JavaScript layer can't see the native bridge. Causes and fixes:

  • iOS: run cd ios && pod install after install, then rebuild from Xcode (not a hot reload).
  • Android: clean and rebuild: cd android && ./gradlew clean, then re-run the app.
  • Autolinking drifted: stop Metro, then npx react-native-clean-project (or your project's equivalent) and rebuild.

The warning is non-fatal. Your app won't crash, but events from those calls are dropped.


iOS archive fails: Undefined symbol: _OBJC_CLASS_$_TriplePixelSDK…

The XCFramework is statically linked and must not be embedded.

Fix: target → GeneralFrameworks, Libraries, and Embedded Content → find TriplePixelSDK.xcframework → switch from "Embed & Sign" to "Do Not Embed" → archive again.


Android: duplicate class errors at build time

The SDK ships as a self-contained AAR. If another dependency also embeds the Kotlin runtime, exclude the duplicate:

implementation("com.triplewhale.pixel:shared:0.1.2") {
    exclude(group = "org.jetbrains.kotlin", module = "kotlin-stdlib")
}

Confirm the duplicate first with ./gradlew :app:dependencies.


iOS: SPM checksum mismatch

If Xcode reports unable to verify checksum after pulling an update:

  1. File → Packages → Reset Package Caches
  2. File → Packages → Resolve Package Versions
  3. Clean build folder (⇧⌘K) and rebuild.

Reporting a security vulnerability

Report privately. Do not open a public issue or post it in any public forum.

Email [email protected] with:

  • A description of the vulnerability and its potential impact.
  • Steps to reproduce, ideally with a minimal proof-of-concept.
  • The SDK version, the platform (Android / iOS / React Native), and runtime versions.
  • Whether the issue is currently being exploited in the wild, to the best of your knowledge.

We aim to acknowledge reports within two business days and share a remediation plan within seven.


Contacting Support

If the issue persists after working through this guide, contact the Triple Whale support team. Include the following to help resolve the issue quickly:

  • The full error message or log output.
  • Your shopName passed to init().
  • The platform (Android / iOS / React Native) and SDK version.
  • Device OS version and runtime versions (Android API level, iOS version, React Native version, etc.).