インストール
Android(Kotlin)用のTealium SDKのインストール方法を学びます。
必要条件
- Android Studio
- Android SDK (Lollipop/5.0+ / API Level 21+)
- Tealium iQ Mobile Profile
- Tealium Customer Data Hub account
サンプルアプリ
Android(Kotlin)のsample appsを探索して、Tealiumライブラリ、トラッキングイベント、ベストプラクティスの実装についての知識を深めます。
さらに、Tealiumの機能をすべて中央のヘルパークラスに抽象化することをお勧めします。sample helper classを探索してみてください。
コードの取得
Tealium Android libraryをクローンします。ダウンロードするよりもクローンする方が、将来のリリースに更新するのが容易になります。
TealiumクラスとAndroid用のメソッドの完全なリストについては、Tealium APIを参照してください。
インストール
Tealium Kotlinライブラリはモジュールに分割されています。可能な限り最小のインストールサイズを維持するために、必要な機能を達成するために必要なモジュールのみをインストールすることをお勧めします。
Tealium KotlinライブラリはMavenまたは手動でインストールします。
Maven
Android用のTealiumライブラリをMavenでインストールするには(推奨):
-
プロジェクトのトップレベルの
build.gradleファイルにTealium Maven URLを追加します:allprojects { repositories { mavenCentral() maven { url "https://maven.tealiumiq.com/android/releases/" } } } -
プロジェクトモジュールの
build.gradleファイルに、次のMaven依存関係を追加します:dependencies { implementation 'com.tealium:kotlin-core:1.5.5' }
手動
Android用のTealiumライブラリを手動でインストールするには:
-
プロジェクトルートの
build.gradleファイルにflatDirを追加します:allprojects { repositories { mavenCentral() flatDir { dirs 'libs' } } } -
tealium-kotlin-1.5.x.aarを<PROJECT_ROOT>/<MODULE>/libsに追加します。 -
build.gradleファイルにTealiumライブラリの依存関係を追加します:dependencies { implementation(name:'tealium-kotlin-1.5.5', ext:'aar') }
初期化
Tealiumを初期化するには、TealiumConfigインスタンスを構成し、それをTealiumインスタンスに渡します。Tealium Kotlinライブラリは、アプリのグローバルアプリケーションクラスの onCreate() メソッド内で初期化することをお勧めします。
Tealiumインスタンスをトラッキングヘルパークラスを使用して管理します。これにより、Tealium Kotlinライブラリへの単一のエントリーポイントが提供され、将来のアップグレードが簡素化されます。
object TealiumHelper {
lateinit var tealium: Tealium
fun init(application: Application) {
val tealiumConfig = TealiumConfig(
application,
"ACCOUNT",
"PROFILE",
Environment.DEV,
dataSourceId = "DATASOURCE_ID", //optional
modules = mutableSetOf(VisitorService),
dispatchers = mutableSetOf(Dispatchers.Collect)
)
tealium = Tealium.create("tealium_instance", tealiumConfig)
}
}
ディスパッチャー
データをTealiumエコシステムに送信するには、次のディスパッチャーから選択します:
- Tag Management
TagManagement Dispatcherを追加して、Tealium iQ Tag Managementを使用し、そのタグ管理構成ロジックを利用します。 - Collect
Collect Dispatcherを追加して、Tealium Customer Data Hubのサーバーサイドソリューションを使用します。
ログレベル
ログレベルは TealiumConfig インスタンスから環境に構成されます。
異なるログレベルを使用するには、logLevelプロパティを構成します:
config.logLevel = LogLevel.DEV // or LogLevel.QA, LogLevel.PROD
クッキー
クッキーはデフォルトでwebviewで有効になっています。
イベントバッチング
イベントバッチングは、TealiumConfig インスタンス上でローカルに構成するか、またはMobile Publish Settingsを使用してリモートで構成できます。バッチサイズを1より大きい値に構成すると有効になります。イベントは、キュー内のイベント数がバッチサイズと等しいときにディスパッチされます。
以下に、ローカルでバッチングを構成するときの可能なオプションを示します:
object TealiumHelper {
private lateinit var tealium: Tealium
fun init(app: Application) {
config.overrideDefaultLibrarySettings = LibrarySettings(
batching = Batching(
batchSize = 10, // send in batches of 10 (default: 1)
maxQueueSize = 1000, // maximum of 1000 queued events (default: 100)
expiration = TimeUnit.DAYS // queue for a maxumum of 5 days (default: 86400)
.toSeconds(5).toInt()
)
)
}
}
Javaからの移行
Java libraryからKotlinライブラリに移行するとき、以下の保存データが自動的に移行されます:
- Consent Preferences
- Lifecycle data
- Persistent data
* Persistent Data APIを通じて追加されたカスタム永続データ
* Tealium persistent data:
app_uuid,tealium_visitor_id
Kotlinライブラリへの移行が完了すると、Javaライブラリからのレガシーデータは削除されます。その後、Javaライブラリに戻ると、新しい tealium_visitor_id と app_uuid が生成され、カスタム永続データが失われます。
Android Wear
Android Wearアプリの場合、データ収集にはCollectモジュールを使用します。Android Wear OSはwebviewのサポートを提供していないため、Tag Managementモジュールはサポートされていません。
Android WearアプリをTealium for Androidを使用して開発している場合、Googleはスタンドアロンアプリの作成を推奨します。
マルチプロセスアプリ
Android 9+ マルチプロセスアプリケーション
Android 9では、マルチプロセスアプリケーションの WebView データディレクトリに関する動作の変更が導入されました。この変更により、WebView は複数のプロセス間で単一のデータディレクトリを共有しなくなりました。通常、WebView を使用するすべてのアクティビティを同じプロセスに配置することをお勧めします。
Tag Managementモジュールを使用し、WebView の追加インスタンスを実装する場合、アプリがクラッシュするのを防ぐために、Tealiumインスタンスを作成する前に WebView.setDataDirectorySuffix() を呼び出すことをお勧めします。
Tag Managementモジュールからクッキーとウェブデータにアクセスする必要がある場合は、CookieManager.getCookie() および CookieManager.setCookie() メソッドを使用してプロセス間でコピーします。
詳細については、Web-based data directories separated by processを参照してください。
最終更新日 :: 2024年March月28日