{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"redocly_category":"Activation","product_name":"Engage Studio","type":"markdown"},"seo":{"title":"Mobile In-App SDK Troubleshooting","description":"Resolve Engage Mobile SDK initialization, Hosted Pages, Bridge, navigation, and Push token integration issues for Mobile In-App Messaging.","siteUrl":"https://docs.treasure.ai","image":"/assets/treasure-ai-social-preview.e6fefb35676f6da91c2d1bc783bd39e618e7af2b1ad3aa52a96ae69d72e700fe.b1bff462.png","lang":"en-US","jsonLd":{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.treasure.ai/","name":"Treasure AI","url":"https://www.treasure.ai/","logo":"https://www.treasure.ai/hubfs/assets/images/logos/primary-logo.svg"},{"@type":"WebSite","@id":"https://docs.treasure.ai/#website","name":"Treasure AI Documentation","url":"https://docs.treasure.ai/","inLanguage":["en","ja"],"publisher":{"@id":"https://www.treasure.ai/"}}]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"mobile-in-app-sdk-troubleshooting","__idx":0},"children":["Mobile In-App SDK Troubleshooting"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this page when you integrate or debug the iOS or Android Engage Mobile SDK. For audience, Launch, and campaign targeting issues, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/campaign-troubleshooting"},"children":["Campaign Troubleshooting"]},"."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Beta"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The native SDK behavior, error details, and troubleshooting steps are part of the preview contract and may change before general availability."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"sdk-setup-fails","__idx":1},"children":["SDK Setup Fails"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Check the following items:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Initialize the Core SDK before calling any Engage API."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["On iOS, call ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TDEngage.install()"]}," after Core SDK initialization. On Android, Mobile In-App rendering is bundled in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td-android-sdk"]}," and needs no install step."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Configure the Personalization endpoint and token."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Configure the database and table used for trigger requests."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Confirm that the preview artifact matches the platform and release-specific installation instructions."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For the required values and initialization examples, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/setup-and-prerequisites"},"children":["Set Up Mobile In-App Campaigns"]}," and the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/sdk-reference"},"children":["SDK API and Event Reference"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"a-hosted-pages-url-does-not-load","__idx":2},"children":["A Hosted Pages URL Does Not Load"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Verify that the URL is HTTPS, reachable from the device, and does not require credentials that the WebView cannot provide. Check redirects, hosted assets, and the page's responsive viewport."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Inspect device logs for network, certificate, or WebView errors. Test the URL outside the campaign flow to distinguish hosting problems from Personalization or SDK problems."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"a-hosted-pages-page-has-no-way-to-close","__idx":3},"children":["A Hosted Pages Page Has No Way to Close"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Add a close, back, or completion action to the hosted page. Hosted Pages does not use the Modal or Banner close-button settings."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A page that cannot provide an exit path can leave the SDK-owned full-screen WebView open."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"windowtdcontext-is-empty","__idx":4},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["window.TDContext"]}," Is Empty"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["profileContext"]}," before displaying the message and verify that every value is JSON serializable. Clear or replace stale context when the signed-in customer changes."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Do not put API keys, Personalization tokens, passwords, or unnecessary personal data in the context."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"a-link-opens-the-wrong-destination","__idx":5},"children":["A Link Opens the Wrong Destination"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Check whether the URL is an app-owned custom scheme or a web URL handled by the SDK. Validate app-owned routes before navigation. The app must authorize custom actions and Deep Links."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For iOS, inspect ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["linkHandler"]},". For Android, inspect ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TreasureData.setLinkHandler"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"a-custom-action-does-not-reach-the-app","__idx":6},"children":["A Custom Action Does Not Reach the App"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Confirm that the bridge delegate is configured and that its object remains alive. Validate the action name, login state, permissions, and every parameter before taking an app-specific action."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The SDK does not authorize app-specific actions on behalf of the app."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"a-push-token-is-not-registered","__idx":7},"children":["A Push Token Is Not Registered"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The app obtains the token and calls ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["registerDeviceToken"]},"; the SDK does not request notification permission or discover the token automatically."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For Android, confirm that the app receives a non-empty FCM token, passes ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TDPushProvider.FCM"]},", and uses a valid table name. For iOS, confirm that the app passes the APNs token with the APNs provider."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Push receipt, notification display, and notification-tap handling remain app responsibilities."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"no-campaign-measurement-is-recorded","__idx":8},"children":["No Campaign Measurement Is Recorded"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Confirm that the message was returned as a campaign offer and that the SDK presented it. A direct ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["openUrl"]}," call does not have campaign identity and does not create campaign measurement events."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Also check the following:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["enableAutoAppendUniqId()"]}," was enabled before the trigger when installation-level association is required"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["disableCustomEvent()"]}," has not disabled the Core SDK path used by measurement"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Another message was not already visible"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The host screen-state gate did not reject the presentation"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/measurement"},"children":["Mobile In-App Measurement"]}," for the event fields and destination."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"related-documentation","__idx":9},"children":["Related Documentation"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/troubleshooting"},"children":["Mobile In-App Troubleshooting"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/campaign-troubleshooting"},"children":["Campaign Troubleshooting"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/measurement"},"children":["Mobile In-App Measurement"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/sdk-reference"},"children":["Engage Mobile SDK API and Event Reference"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/developer-guide-ios"},"children":["iOS SDK Integration"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/developer-guide-android"},"children":["Android SDK Integration"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/marketing-cloud/engage-studio/channels/mobile-push/device-token-registration"},"children":["Mobile Push Device Token Registration"]}]}]}]},"headings":[{"value":"Mobile In-App SDK Troubleshooting","id":"mobile-in-app-sdk-troubleshooting","depth":1},{"value":"SDK Setup Fails","id":"sdk-setup-fails","depth":2},{"value":"A Hosted Pages URL Does Not Load","id":"a-hosted-pages-url-does-not-load","depth":2},{"value":"A Hosted Pages Page Has No Way to Close","id":"a-hosted-pages-page-has-no-way-to-close","depth":2},{"value":"window.TDContext Is Empty","id":"windowtdcontext-is-empty","depth":2},{"value":"A Link Opens the Wrong Destination","id":"a-link-opens-the-wrong-destination","depth":2},{"value":"A Custom Action Does Not Reach the App","id":"a-custom-action-does-not-reach-the-app","depth":2},{"value":"A Push Token Is Not Registered","id":"a-push-token-is-not-registered","depth":2},{"value":"No Campaign Measurement Is Recorded","id":"no-campaign-measurement-is-recorded","depth":2},{"value":"Related Documentation","id":"related-documentation","depth":2}],"frontmatter":{"seo":{"title":"Mobile In-App SDK Troubleshooting","description":"Resolve Engage Mobile SDK initialization, Hosted Pages, Bridge, navigation, and Push token integration issues for Mobile In-App Messaging."}},"lastModified":"2026-10-24T07:54:27.640Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/marketing-cloud/engage-studio/channels/mobile-inapp/sdk-troubleshooting","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}