Skip to content
Last updated

モバイルIn-App SDKのトラブルシューティング

iOSまたはAndroidのEngage Mobile SDKを連携・デバッグしている場合に使用します。オーディエンス、Launch、キャンペーンターゲティングの問題については、キャンペーンのトラブルシューティングを参照してください。

Beta

ネイティブSDKの動作、エラーの詳細、トラブルシューティング手順はプレビュー契約の一部であり、一般提供前に変更される場合があります。

SDKのセットアップに失敗する

次を確認してください。

  1. Engage APIを呼び出す前にCore SDKを初期化すること
  2. iOSではCore SDK初期化後にTDEngage.install()を呼び出すこと。AndroidではモバイルIn-Appのレンダリングがtd-android-sdkに内包されており、インストール手順は不要です
  3. Personalizationエンドポイントとトークンを設定すること
  4. トリガーリクエストに使用するデータベースとテーブルを設定すること
  5. プレビューアーティファクトがプラットフォームとリリース別の導入手順に一致していること

必要な値と初期化例については、モバイルIn-AppキャンペーンをセットアップするとEngage Mobile SDK APIとイベントリファレンスを参照してください。

Hosted Pages URLを読み込めない

HTTPS URLであること、デバイスから到達できること、WebViewが提供できない認証情報を必要としていないことを確認してください。リダイレクト、ホストされたアセット、レスポンシブなviewportも確認します。

デバイスログでネットワーク、証明書、WebViewのエラーを確認してください。キャンペーン経路とは別にURLをテストし、ホスティングの問題とPersonalizationまたはSDKの問題を切り分けます。

Hosted Pagesページを閉じられない

ホストされたページに閉じる、戻る、完了などの操作を追加してください。Hosted PagesにはModalやBannerの閉じるボタン設定は適用されません。

終了操作がないページは、SDKが管理するフルスクリーンWebViewを開いたままにする場合があります。

window.TDContextが空になる

メッセージ表示前にprofileContextを設定し、すべての値がJSON化可能であることを確認してください。サインイン中のユーザーが変わったら、古いコンテキストをクリアまたは置き換えます。

APIキー、Personalization token、パスワード、不要な個人データをコンテキストに含めないでください。

リンク先が想定と異なる

URLがアプリ所有のCustom Schemeか、SDKが処理するWeb URLかを確認してください。アプリが所有するルートは遷移前に検証します。カスタムアクションとDeep Linkはアプリで認可してください。

iOSではlinkHandler、AndroidではTreasureData.setLinkHandlerを確認します。

カスタムアクションがアプリに届かない

Bridge Delegateが設定され、そのオブジェクトが存続していることを確認してください。アプリ固有の処理を実行する前に、アクション名、ログイン状態、権限、すべてのパラメーターを検証します。

SDKはアプリ固有のアクションを代わりに認可しません。

Pushトークンが登録されない

アプリがトークンを取得してregisterDeviceTokenを呼び出します。SDKは通知権限を要求したり、トークンを自動検出したりしません。

Androidでは、空でないFCMトークンを受け取り、TDPushProvider.FCMと有効なテーブル名を渡していることを確認してください。iOSでは、APNsトークンをAPNs Providerとともに渡していることを確認します。

Pushの受信、通知表示、通知タップの処理は引き続きアプリが担当します。

キャンペーン計測が記録されない

メッセージがキャンペーンオファーとして返され、SDKが表示したことを確認してください。アプリから直接openUrlを呼び出した場合はキャンペーンIDがないため、キャンペーン計測イベントは作成されません。

次も確認してください。

  • インストール単位の関連付けが必要な場合、トリガー前にenableAutoAppendUniqId()を有効にしていること
  • disableCustomEvent()で計測に使用するCore SDK経路を無効にしていないこと
  • 別のメッセージが表示中でないこと
  • ホスト側の画面状態ゲートが表示を拒否していないこと

イベントフィールドと送信先については、モバイルIn-Appの計測を参照してください。

関連ドキュメント