TealiumConfig
メインのTealiumクラスの構成オプションを構成するためのクラスです。個々のモジュールは、有効になっている場合にのみ、TealiumConfigクラスの拡張機能を提供します。
クラス: TealiumConfig
以下は、iOS(Swift)のTealiumConfig
クラスの一般的に使用されるメソッドとプロパティをまとめたものです。
メソッド/プロパティ | 説明 |
---|---|
addDelegate() |
TealiumDelegateプロトコルに準拠する新しいデリゲートを追加します |
addRemoteCommand() |
後で実行するためのリモートコマンドを追加します |
batchingBypassKeys |
バッチ処理をバイパスするイベント名のリストを構成します(個別のイベントとして送信されます) |
batchingEnabled |
イベントのバッチ処理を有効または無効にします(デフォルトは無効) |
batchSize |
1つのバッチリクエストに結合するイベントの数を構成します(最大:10) |
collectOverrideProfile |
データを別のTealiumプロファイルに送信するために、Tealium Collectプロファイルを上書きします |
collectOverrideURL |
データを別のエンドポイントに送信するために、Tealium Collect URLを上書きします |
connectivityRefreshEnabled |
有効になっている場合(デフォルト)、接続モジュールは指定された間隔で接続を確認します |
connectivityRefreshInterval |
デフォルトの接続更新間隔を秒単位で構成します |
consentLoggingEnabled |
同意のログ記録機能を有効または無効にします |
delegates |
有効になっているデリゲートの配列を返します |
dispatchAfter |
キューをフラッシュするまでのイベント数を構成します |
dispatchExpiration |
バッチの有効期限を日単位で構成します。デバイスがオフラインの場合、古いイベントは削除されます |
dispatchQueueLimit |
キューに格納するイベントの最大数を構成します。この数に達した場合、キューがフラッシュされていない場合は、最も古いイベントが削除されます |
enableRemoteHTTPCommand() |
ビルトインのリモートHTTPコマンドを有効にします |
existingVisitorId |
アプリ拡張での第一者IDとして使用される既存の訪問IDを構成します |
geofenceFileName |
ローカルのジオフェンスJSONファイルアセットの名前を構成します。ファイルの拡張子は含めないでください |
geofenceUrl |
ホストされたJSONファイルのURLを構成します |
initialUserConsentCategories |
ライブラリの初回起動時にユーザーの初期同意カテゴリを構成します |
initialUserConsentStatus |
初期のユーザー同意ステータスを構成します |
logLevel |
新しいログレベルを構成します |
memoryReportingEnabled |
デバイスデータモジュールでメモリレポートを有効または無効にします |
modulesList |
有効または無効にするモジュールのリスト |
overrideConsentPolicy |
デフォルトの同意「policy」パラメータを上書きします |
remoteAPIEnabled |
remote_api イベントを有効(true )または無効(false )にします。DispatchQueueモジュールを使用している場合は、RemoteCommandsモジュールに必要です。 |
remoteCommand |
登録されたすべてのリモートコマンドの配列を返します |
remoteHTTPCommandDisabled |
ビルトインのリモートHTTPコマンドを無効にします(true の場合) |
rootView |
WKWebView にアタッチする現在のUIView を構成します |
searchAdsEnabled |
AttributionモジュールでApple Search Ads APIを有効または無効にします |
shouldAddCookieObserver |
TealiumがWKWebView のCookie Observerを追加するかどうかを決定します |
shouldUseRemotePublishSettings |
モバイルパブリッシュ構成(デフォルト:有効)を構成します |
tagManagementOverrideURL |
タグ管理モジュールで使用されるデフォルトのURLを上書きします |
TealiumConfig() |
TealiumConfig オブジェクトのコンストラクタ |
updateDistance |
位置情報の更新を受け取る距離間隔(メートル)を構成します |
useHighAccuracy |
位置情報の精度を低精度(デフォルト)または高精度に構成します |
addDelegate()
TealiumDelegateプロトコルに準拠する新しいデリゲートを追加します。
addDelegate(delegate)
パラメータ | 型 | 説明 |
---|---|---|
delegate |
TealiumDelegate |
TealiumDelegateプロトコルに準拠するクラス |
以下の例では、現在のモジュールがTealiumDelegate
プロトコルを実装していることを前提としています。
config.addDelegate(self)
addRemoteCommand()
後で実行するためのリモートコマンドを追加します。
addRemoteCommand(command)
パラメータ | 型 | 説明 |
---|---|---|
command |
TealiumRemoteCommand |
追加するTealiumRemoteCommandのインスタンス |
以下の例は、Tealiumの初期化の前にリモートコマンドを追加する方法を示しています。
#if os(iOS)
let remoteCommand = TealiumRemoteCommand(commandId: "test",
description: "test") { response in
print("Remote Command 'test' executed")
}
config.addRemoteCommand(remoteCommand)
#endif
batchingBypassKeys
バッチ処理をバイパスするイベント名のリストを構成します。
config.batchingBypassKeys = ["home_screen"]
batchingEnabled
イベントのバッチ処理を有効(true
)または無効(false
)にします。デフォルトでは無効です。
config.batchingEnabled = true
batchSize
1つのバッチリクエストに結合するイベントの数を構成します。最大は10です。
config.batchSize = 8
collectOverrideProfile
データを別のTealiumプロファイルに送信するために、Tealium Collectプロファイルを上書きします。
config.collectOverrideProfile = "main"
collectOverrideURL
データを別のエンドポイントに送信するために、Tealium Collect URLを上書きします。
config.collectOverrideURL = url
プロパティの値 | 型 | 説明 |
---|---|---|
url |
String |
上書きするURL |
デフォルトのURLは次のとおりです:
https://collect.tealiumiq.com/event/
イベントのバッチ処理を行う場合のデフォルトのURLは次のとおりです:
https://collect.tealiumiq.com/bulk-event/
このメソッドは通常、カスタムホスト名を構成するために使用されるか、特定のリージョンのホスト名を構成するために使用されます。次の例では、Tealium CollectのベースURLをEU Centralリージョン内に構成しています。
let url = "https://collect-eu-central-1.tealiumiq.com/event/"
config.collectOverrideURL = url
connectivityRefreshEnabled
有効になっている場合(デフォルト)、接続モジュールは指定された間隔で接続を確認します(setConnectivityRefreshInterval
で制御されます)。キューに溜まったディスパッチは、接続が再開されるとすぐに送信されます。
config.connectivityRefreshEnabled = true
connectivityRefreshInterval
デフォルトの接続更新間隔を秒単位で構成します。TealiumConfigインスタンスに構成されていない場合、デフォルトは30秒です。
config.connectivityRefreshInterval = 30
consentLoggingEnabled
Consent Logging機能を有効にします。これにより、すべての同意ステータスの変更が監査目的でTealium Customer Data Hubに送信されます。
config.consentLoggingEnabled = true
delegates
有効になっているデリゲートの配列を返します。
以下の例は、有効になっているデリゲートの配列を取得する方法を示しています。
let delegates = config.delegates
dispatchAfter
キューを自動的にフラッシュするまでのイベント数を構成します。
config.dispatchAfter = 20
dispatchExpiration
バッチの有効期限を日単位で構成します。デバイスがオフラインの場合、古いイベントは削除されます。
config.dispatchExpiration = 5
dispatchQueueLimit
イベントキューに格納するイベントの最大数を構成します。この数に達した場合、キューがフラッシュされていない場合は、最も古いイベントが削除されます。
config.dispatchQueueLimit = 50
enableRemoteHTTPCommand()
ビルトインのリモートHTTPコマンドを有効にします(Swiftモジュール:RemoteCommandsを参照)。
enableRemoteHTTPCommand()
existingVisitorId
アプリ拡張での第一者IDとして使用される既存の訪問IDを構成します。
config.existingVisitorId = id
geofenceFileName
ローカルのジオフェンスJSONファイルアセットの名前を構成します。ファイルの拡張子は含めないでください。
config.geofenceFileName = <String>
型 | 説明 | 例 |
---|---|---|
String |
JSONファイルの名前 | "geofences" |
geofenceUrl
ホストされたジオフェンスJSONファイルのURLを構成します。
config.geofenceUrl = <String (url)>
型 | 説明 | 例 |
---|---|---|
String |
ジオフェンスファイルのURL | "https://example.com/.../geofences.json" |
initialUserConsentCategories
ライブラリの初回起動時にユーザーの初期同意カテゴリを構成します。保存された構成がある場合、これらは構成オブジェクトで渡された構成を上書きします。同意ステータスは.consented
に構成されます。
config.initialUserConsentCategories = [.cdp, .analytics]
initialUserConsentStatus
初期のユーザー同意ステータスを構成します。これは、ライブラリの初回起動時にユーザーに対して行われます。保存された構成がある場合、これらは構成オブジェクトで渡された構成を上書きします。
同意されたカテゴリのリストをすべて含めるため、ステータスが.consented
の場合は、利用可能なすべての同意カテゴリが構成されます。カテゴリを選択的に構成することはできません。
このメソッドを使用して同意前のすべてのトラッキングイベントを無視し、同意が付与される前にイベントをキューに入れるデフォルトの動作を上書きするには、次の行を構成オブジェクトに追加します。
config.initialUserConsentStatus = .notConsented
パラメータ | 型 | 説明 | 例 |
---|---|---|---|
status |
TealiumConsentStatus |
TealiumConsentStatus列挙型の値 | [.unknown , .consented , .notConsented ] |
以下は、TealiumConsentStatus
列挙型の異なるタイプを定義しています。
.unknown
unknown
ステータスは同意マネージャーのデフォルト構成です。この状態では、同意マネージャーは同意が与えられるまでイベントをローカルにキューに入れます。
.consented
consented
ステータスは、ユーザーがトラッキングに同意した場合に構成されます。この状態では、同意マネージャーは通常どおりすべてのトラッキングコールを許可します。
.notConsented
notConsented
ステータスは、ユーザーがトラッキングを拒否した場合に構成されます。この状態では、同意マネージャーはすべてのトラッキングコールを破棄し、SDKのさらなる処理を停止します。
logLevel
新しいログレベルを構成します(Swiftモジュール:Loggerを参照)。
以下の例は、ログレベルをerrors
に構成する方法を示しています。
let newLogLevel = TealiumLogLevel.errors
config.logLevel = newLogLevel
memoryReportingEnabled
デバイスデータモジュールでメモリレポートを有効(true
)または無効(false
)にします(デフォルト:無効)。
config.memoryReportingEnabled = true
modulesList
モジュールのリストを有効または無効にします(モジュールリストを参照)。
以下の例は、autotrackingモジュールをブラックリストに追加する方法を示しています。
let modulesList = TealiumModulesList(isWhitelist: false, moduleNames: ["autotracking"])
config.modulesList = list
TealiumModulesList struct
には、次のパラメータがあります。
パラメータ | 型 | 説明 | 例 |
---|---|---|---|
isWhiteList |
Bool |
モジュールリストがブラックリスト(false )かホワイトリスト(true )かを決定します |
moduleNames: ["autotracking"] |
modulesList |
[String] |
有効または無効にするモジュールの名前の配列 | ["true" , "false" ] |
overrideConsentPolicy
デフォルトの同意「policy」パラメータを上書きします(デフォルト:"gdpr"
)。
let policy = "ccpa"
config.overrideConsentPolicy = policy
remoteAPIEnabled
remote_api
イベントを有効(true
)または無効(false
)にします。DispatchQueueモジュールを使用している場合は、RemoteCommandsモジュールに必要です。デフォルトはfalse
です。
config.remoteAPIEnabled = true
remoteCommands
登録されたすべてのリモートコマンドの配列を返します。
以下の例は、登録されたすべてのリモートコマンドの配列を取得する方法を示しています。
let remoteCommands = config.remoteCommands
remoteHTTPCommandDisabled
ビルトインのリモートHTTPコマンドを無効にします(Swiftモジュール:RemoteCommandsを参照)。
config.remoteHTTPCommandDisabled = true
rootView
WKWebView
にアタッチする現在のUIView
を構成します。プッシュ通知などの複雑なビューヒエラルキーを持つ場合にのみ必要です。
let view = self.view
config.rootView = view
searchAdsEnabled
Apple Search Ads APIをAttributionモジュールで有効(true
)または無効(false
)にします。
config.searchAdsEnabled = true
shouldAddCookieObserver
true
に構成されている場合(デフォルト)、このメソッドは、すべてのCookieを正常に移行するためにCookie Observerを追加するかどうかを決定します。false
に構成されている場合、複数のCookie Observerが存在する場合、それらのうちの1つのみが呼び出され、一部のCookieが移行されない可能性があります。
config.shouldAddCookieObserver = false
shouldAddCookieObserver
プロパティを使用すると、Cookieの同期中に独自のCookie Observerを使用できます。これには、Cookieを構成した後にメインスレッドでCookieを取得するためのCookie Observerが必要です。これは、WKWebView
のバグにより、独自のオブザーバが呼び出されないためです。
shouldUseRemotePublishSettings
モバイルパブリッシュ構成(バージョン1.9.0以上)を有効(デフォルト)または無効に構成します。
config.shouldUseRemotePublishSettings = false
バージョン1.9.0以降、モバイルパブリッシュ構成はデフォルトで有効になっており、使用しない場合は無効にする必要があります。iQタグ管理でモバイルパブリッシュ構成を構成するか、Swiftインストールでconfig.shouldUseRemotePublishSettings = false
を使用して無効にします。これを行わないと、初期化の失敗が発生し、トラッキングができなくなります。
tagManagementOverrideURL
タグ管理モジュールで使用されるデフォルトのURLを上書きします。TealiumのJavaScriptファイルを自己ホストする場合に必要です。
以下の例は、タグ管理モジュールで使用されるデフォルトのURLを上書きする方法を示しています。
let url = "https://tags.mycdn.com/utag/myaccount/myprofile/myenv/mobile.html"
config.tagManagementOverrideURL = url
TealiumConfig()
TealiumConfig
オブジェクトのコンストラクタです。このオブジェクトは、特定のアカウントのライブラリを初期化するために必要です。
TealiumConfig(account:String, profile:String, environment:String, optionalData:Dictionary, dataSource:String)
パラメータ | 型 | 説明 | 例 |
---|---|---|---|
account |
String |
Tealiumアカウント名 | "companyXYZ" |
profile |
String |
Tealiumプロファイル名 | "main" |
environment |
String |
Tealium環境名 | ["dev" , "qa" , "prod" ] |
datasource |
String |
(オプション)CDHからのTealiumデータソースキー | "abc123" |
updateDistance
位置情報の更新を受け取る距離間隔(メートル)を構成します。
useHighAccuracy
がtrue
に構成されている場合にのみ、このメソッドを使用してください。
config.updateDistance = <Double>
型 | 説明 | 例 |
---|---|---|
Double |
位置情報の更新を受け取る距離間隔(メートル) | 150.0 |
使用例:
func start() {
let config = TealiumConfig(account: "ACCOUNT",
profile: "NAME",
environment: "ENVIRONMENT",
datasource: "DATASOURCE",
optionalData: nil)
// Tealium Locationモジュールの構成メソッド
config.useHighAccuracy = true
config.updateDistance = 150.0
}
useHighAccuracy
位置情報の精度を低精度(デフォルト)または高精度に構成します。
デフォルトでは無効(false
)になっており、位置情報の精度が低精度に構成されます。この構成では、位置情報が500メートル以上移動した場合、これは位置情報の更新と見なされます。この構成では、通常、5分以上かかります。
Appleのsignificant-change location serviceについて詳しく学ぶ。
有効(true
)に構成されている場合、この構成は位置情報のデータ精度を最高精度に構成します。初期イベントはできるだけ早く配信され、その後、位置情報が利用可能になるたびに追加のイベントが配信されます。
Appleのaccuracy of location dataについて詳しく学ぶ。
高精度を使用すると、低精度よりも頻繁な位置情報の更新が行われるため、デバイスのバッテリー消費量が増加します。
config.useHighAccuracy = <Bool>
型 | 説明 | 例 |
---|---|---|
Boolean |
位置情報データの精度を構成します | true |
使用例:
func start() {
let config = TealiumConfig(account: "ACCOUNT",
profile: "NAME",
environment: "ENVIRONMENT",
datasource: "DATASOURCE",
optionalData: nil)
// Tealium Locationモジュールの構成メソッド
config.useHighAccuracy = true
config.updateDistance = 150.0
}
}
最終更新日 :: 2024年May月15日