Tealium PrismモバイルSDKについて学びましょう。
概要
Tealium Prismは、iOS(Swift)、Android(Kotlin)、およびReact Native用のモバイルSDKです。アプリ内で単一のイベントAPIを実装すると、PrismがそのイベントをTealium CollectおよびサポートされているサードパーティSDKにルーティングします。ほとんどの構成はTealiumモバイルプロファイルで行われるため、新しいアプリリリースなしでモジュール、ルール、変換を更新できます。
利点
- 統一されたイベントAPI: SwiftとKotlin用の一貫したイベントAPIで、ほぼ同一のコンセプトと命名、およびReact Native用のTypeScript APIがあります。
- マルチディスパッチャーパイプライン: 同じイベントをTealium Collectおよびデバイス上のベンダーSDKに並行して送信します。
- ルールエンジンとバリア: 接続性、バッチ処理、同意、またはその他の条件に基づいてイベント配信を制御します。
- デバイス上の変換: デバイスを離れる前にイベントペイロードを変更、エンリッチメント、またはフィルタリングし、App Store/Play Storeリリースなしでロジックを更新する能力。
- リモート構成: アプリリリースなしでTealiumモバイルプロファイルからモジュール、ルール、バリア、変換を管理します。
動作原理
Tealium Prismは、パフォーマンスと保守性のために設計されており、ウェブ依存のロジックから完全にネイティブで統一されたアプローチに移行しています。イベントがいつ、どこに配信されるかを制御する3つのコンポーネントがあります:ルールエンジン、ディスパッチャー、およびバリア。
モバイルプロファイル
SDKの構成のほとんどはモバイルプロファイルで構成されます。モバイルプロファイルは、モジュール、拡張機能、バリア、およびロードルールをUIを通じて管理するための専用のワークスペースを提供します。モバイルプロファイルを公開してリモート構成ファイルを更新し、SDKは次のアプリのリフレッシュまたは起動時にそれをロードします。コードの変更やアプリのリリースは必要ありません。
詳細については、モバイルプロファイルを作成するを参照してください。
これはほとんどの構成に推奨されるアプローチです。実装コードを最小限に抑え、ビジネスや運用上のニーズに応じてSDKの動作を調整することができます。他の構成オプションについては、詳細構成を参照してください。
ネイティブランタイム
PrismはWKWebViewに依存するレガシーを排除します。すべてのロジックは100%ネイティブ環境で実行され、カスタムルールエンジンとJSON構成によって駆動されます。これにより、メモリフットプリントが小さくなり、バッテリー効率が向上し、高スループットのイベント処理に特化したリアクティブフレームワークを使用します。
SwiftとKotlinのパリティ
Swift SDKとKotlin SDKはほぼ同一のロジックと命名規則を共有しています。このコードのパリティにより、モバイルチームはiOSとAndroidの実装を単一のメンタルモデルで管理でき、オンボーディング時間を短縮し、プラットフォーム固有の不一致を最小限に抑えることができます。React NativeパッケージはこれらのSDKをラップし、TypeScript APIを通じてその機能のサブセットを公開します。
イベント制御
バリアは、各送信先にイベントがいつ、どのように配信されるかを制御するルールです。これにより、イベントフローを正確に制御できます。
以前のレガシーSDKでは単一のイベントキューを使用しており、一つの送信先がオフラインの場合、すべてのイベント配信が一時停止しました。Prismでは、各ディスパッチャーが独立して動作し、バリアは送信先ごとに構成できるため、並行処理が可能であり、ボトルネックを最小限に抑えることができます。
たとえば、Tealium Collectは接続性とバッチ処理のバリアを使用して帯域幅を最適化し、信頼性の高い配信を保証します。サードパーティのSDKはオフラインでもリアルタイムでイベントを受け取るため、自身のキューを管理できます。
ネイティブ変換
デバイスを離れる前にSwiftまたはKotlinでイベントペイロードを変更するために、カスタムロジックまたは組み込みのTealium iQ拡張機能を使用したネイティブ変換を使用します。ネイティブ変換は、データの問題を修正するか、アプリの更新なしでロジックを更新するのに理想的です。
詳細構成
リモート構成が十分でないシナリオのために、2つの追加の構成方法があります。
ローカルJSONは、アプリに直接構成ファイルをバンドルします。デバイスがリモート構成エンドポイントに到達できない場合や、最初のリモートフェッチが完了する前に動作を事前に構成するために、信頼性の高いフォールバックとして使用します。
プログラム構成は、SDKの構成APIを使用してコード内で直接値を構成します。次の場合に使用します:
- 構成がランタイムのデバイス状態に依存する場合:たとえば、利用可能なディスクスペースに基づいてバッチサイズを調整する場合。
- リモート変更に対して構成をロックする必要がある場合:たとえば、公開ミスが詳細なログを有効にできないように、本番ビルドで
LogLevel.silentを強制する場合。 - プラットフォームへの変更を公開せずに開発中の動作を確認する必要がある場合。
プログラム構成は最高の優先順位を持ち、リモートおよびローカルJSONの両方を上書きします。その他の場合は、UIを使用して構成します。
| 方法 | 優先順位 | 使用時 |
|---|---|---|
| プログラム | 1(最高) | ランタイムで計算された値やコードでロックする必要がある構成。 |
| リモート構成 | 2 | 標準的な運用構成 — モジュール、バリア、変換、ルール。 |
| ローカルJSON | 3 | アプリにバンドルされたフォールバックのデフォルト。 |
最終更新日 :: 2026年October月16日