• 手引き
  • プラットフォーム
  • パートナー
  • English
  • TLC Tealium Learning Center Tealium Learning
    Community
  • Discussions & Ideas Dicussions & Ideas
  • Product Guides Product Guides
  • Knowledge Base Knowledge Base
  • Developer Docs Developer Docs
  • Education Education
  • TLC Blog TLC Blog
  • Support Desk Support Desk
  • CDH Customer Data Hub Customer Data Hub

目次

  • サポートされているプラットフォーム
  • 要件
  • サンプルアプリ
  • インストール
    • Swift Package Manager(推奨)
    • CocoaPods
    • Carthage
  • 初期化
    • アクセス許可
  • 位置追跡
  • ジオフェンシング
  • 追加の検討事項
  • データレイヤー
  • APIリファレンス
IOS SWIFT/MODULE LIST

Locationモジュール

イベントのデバイス位置データに加え、目標物の周囲にジオフェンスを追加する機能を提供します。

Locationモジュールを使用すると、iOSアプリが位置情報を受信し、ジオフェンスを構成および監視できるようになります。位置追跡とジオフェンシングの詳細については、こちらを参照してください。

サポートされているプラットフォーム

以下のプラットフォームがサポートされています。

  • iOS

要件

  • Tealium for Swift(1.9.0以降)

サンプルアプリ

当社のライブラリ、トラッキングメソッド、ベストプラクティスの実装に精通していただけるよう、iOSサンプルアプリをご確認いただけるようになっています。Locationモジュールはメインのサンプルアプリに含まれています。

インストール

LocationモジュールをSwift Package Manager、CocoaPods、またはCarthageによってインストールします。

Swift Package Manager(推奨)

LocationモジュールをSPMによってインストールするには:

  1. レポジトリhttps://www.github.com/Tealium/tealium-swiftを使用して、Xcodeまたはコマンドラインツール内にSwiftパッケージを追加します。

  2. Xcodeを使用する場合は、インストールプロセスでTealiumLocationターゲットを選択します。コマンドラインを使用する場合は、Package.swiftファイル内の依存関係のリストにTealiumLocationモジュールを追加します。

フレームワークは自動でインスタンス化され、TealiumCoreに依存しており、ディスパッチャー(TealiumCollectまたはTealiumTagManagement)が必要です。追加のインポートステートメントは必要ありません。

iOS向けSPMのインストールの詳細については、こちらを参照してください。

CocoaPods

LocationモジュールをCocoaPodsによってインストールするには、Podfileに以下のポッドを追加します。

pod 'tealium-swift/TealiumLocation'

フレームワークは自動でインスタンス化され、TealiumCoreポッドに依存しており、ディスパッチャー(TealiumCollectまたはTealiumTagManagement)が必要です。iOS向けCocoaPodsのインストールの詳細については、こちらを参照してください。

Carthage

LocationモジュールをCarthageによってインストールするには:

  1. Xcodeで対象アプリの[General]構成ページに移動します。

  2. 以下のフレームワークを[Embedded Binaries]セクションに追加します。

    TealiumLocation.framework

    フレームワークは自動でインスタンス化され、TealiumCoreに依存しており、ディスパッチャー(TealiumCollectまたはTealiumTagManagement)が必要です。追加のインポートステートメントは必要ありません。iOS向けCarthageのインストールの詳細については、こちらを参照してください。

初期化

このモジュールをアプリに追加すると、位置追跡がデフォルトで有効になります。位置情報の精度とジオフェンシングの設定オプションは、TealiumConfigのインスタンスのプロパティを使用して設定されます。

アクセス許可

位置情報を収集することをアプリに許可するには、次のキーをアプリのInfo.plistファイルに追加します。

  • Privacy - Location When In Use Usage Description
  • Privacy - Location Always and When In Use Usage Description

これらのキーが存在しない場合、位置情報リクエストはただちに失敗します。位置情報サービスの許可のリクエストの詳細については、こちらを参照してください。

位置追跡

Locationモジュールは継続的な位置追跡を実行します。位置情報の更新は、精度と距離という2つの設定に基づいています。

デフォルトでは、重要な位置情報の更新のみが監視されます。これにより、更新件数が少なくなり、バッテリーの消費量が少なくなります。

より高精度の更新を有効にするには、useHighAccuracyプロパティをtrueに設定し、updateDistanceプロパティを更新がトリガーされる値(メートル単位)に設定します。

func start() {
      let config = TealiumConfig(account: "ACCOUNT",
                                 profile: "PROFILE",
                                 environment: "ENVIRONMENT",
                                 datasource: "DATASOURCE",
                                 optionalData: nil)
      config.useHighAccuracy = true
      config.updateDistance = 150
      //...
  }

ジオフェンシング

ジオフェンシングを有効にするには、次のいずれかの方法で、ジオフェンスJSONファイルを指定します。

  • ホスト型URL プロパティgeofenceUrlへのURLとして指定されている独自のホスト型ジオフェンスファイルを使用します。 このオプションは、公開設定URLをオーバーライドした場合、またはホスト型データレイヤーを使用する必要がある場合に推奨されます。

    config.geofenceUrl = "https://example.com/geofences.json"
  • ローカルファイル プロパティgeofenceFileNameを設定して、アプリに保存されているジオフェンスファイルを使用します。ファイル拡張子は省略します。

    config.geofenceFileName = "geofences" // geofences.json

追加の検討事項

アクティブなジオフェンスの数 ジオフェンスは、可能な限り少ないリソースを使用して動的に追加および削除されます。定義できるジオフェンスの数に制限はありませんが、アクティブなジオフェンスの数は、実行中の_全_アプリケーションにわたって、デバイスユーザーあたり20個までに制限されています。

ジオフェンスの初期化 作成時にユーザーがジオフェンス内にいる場合、"enter"遷移イベントはトリガーされません。これは、"exit"および"enter"の遷移イベントが境界を横断するときにトリガーされ、境界内に存在するときにはトリガーされないためです。

データレイヤー

以下の変数は、モバイルデータレイヤーの一部としてLocationモジュールによって値が入力されます。これらの変数はライブラリから自動的に各トラッキングコールに含まれます。

変数名 型 説明 例
latitude String 最後に記録されたユーザーの位置の緯度 "32.906119"
longitude String 最後に記録されたユーザーの位置の経度 "-117.2367"
location_accuracy String Locationモジュールの精度設定("high"、"low"など) "high"

ジオフェンシング中にユーザーの遷移状態が変化すると、位置データを含むトラッキングコールが送信されます。遷移状態の変化には、ジオフェンスへのユーザーの入退出が含まれます。以下の追加の変数がデータレイヤーに送信されます。

変数名 型 説明 例
tealium_event String Tealiumのトラッキング対象ジオフェンスイベント "geofence_entered"または"geofence_exited"
geofence_name String ジオフェンス地域の名前 "Tealium_San_Diego"
geofence_transition_type String ジオフェンス遷移イベントのタイプ "geofence_entered"または"geofence_exited"
movement_speed String デバイスの瞬間速度(メートル/秒で測定) "1.0"
location_timestamp String ユーザーがジオフェンス地域に進入/退出したときに記録された日付/時刻(GMT) "2020-01-28 16:29:46 +0000"

APIリファレンス

Locationモジュールで使用されるメソッドのリファレンスについては、Tealium SDK for iOS APIのTealiumConfigクラスを参照してください。

Lifecycleモジュール
Loggerモジュール

 
  • モバイル
  • 始める
    • 概要
    • モバイルの概念
    • クライアントサイド
    • サーバーサイド
    • データレイヤー
    • 同意管理
    • イベントバッチ処理
    • ユーザーの位置情報とジオフェンシング
    • 機能比較
    • トラブルシューティング
  • Remote Commands
    • 概要
    • 仕組み
    • リモートコマンド
      • リモートコマンド:AppsFlyer
      • リモートコマンド:Braze
      • リモートコマンド:Contentsquare
      • リモートコマンド:Facebook
      • Firebase
      • リモートコマンド:Usabilla
  • Android (Java)
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • データ管理
    • 同意管理
    • モジュールのリスト
      • Ad Identifierモジュール
      • Crash Reporterモジュール
      • Install Referrerモジュール
      • Lifecycle Trackingモジュール
      • Locationモジュール
      • Optimizely X Trackingモジュール
    • Android TV
    • Android Wear
    • APIリファレンス
      • ConsentManager
      • DataSources
      • LifeCycle
      • Tealium
      • Tealium.Config
      • TealiumLocation
    • リリースノート
  • Cordova
    • 概要
    • インストール
    • トラッキング
    • データ管理
    • モジュールのリスト
      • Ad Identifierモジュール
      • Crash Reporterモジュール
      • Install Referrerモジュール
    • APIリファレンス
    • リリースノート
  • Flutter
    • 概要
    • インストール
    • トラッキング
    • 同意管理
    • データ管理
    • APIリファレンス
    • リリースノート
  • iOS (Objective-C)
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • データ管理
    • 同意管理
    • Tag Management
    • モジュールのリスト
      • Lifecycle Trackingモジュール
      • Optimizely X Trackingモジュール
    • tvOS
    • watchOS
    • APIリファレンス
    • リリースノート
  • iOS (Swift)
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • データ管理
    • アイデンティティの解決
    • アプリ拡張機能
    • 同意管理
    • モジュール
    • モジュールのリスト
      • AppDataモジュール
      • Attributionモジュール
      • AutoTrackingモジュール
      • Collectモジュール
      • Connectivityモジュール
      • CrashReporterモジュール
      • DataSourceモジュール
      • DefaultStorageモジュール
      • Delegateモジュール
      • DeviceDataモジュール
      • DispatchQueueモジュール
      • FileStorageモジュール
      • Lifecycleモジュール
      • Locationモジュール
      • Loggerモジュール
      • PersistentDataモジュール
      • RemoteCommandsモジュール
      • TagManagementモジュール
      • VisitorServiceモジュール
      • VolatileDataモジュール
    • Objective-Cとの連携
    • 機能比較
    • APIリファレンス
      • TealiumConfig
      • TealiumConsentCategories
      • TealiumConsentManagerDelegate
      • TealiumConsentManager
      • TealiumInstanceManager
      • TealiumPersistentData
      • TealiumVolatileData
      • Tealium
    • リリースノート
  • React Native
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
    • リリースノート
  • Xamarin
    • 概要
    • インストール
    • トラッキング
    • データ管理
    • 同意管理
    • APIリファレンス
    • リリースノート
  • ウェブ
  • AMP
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
  • Angular
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • JavaScript (Web)
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • ユニバーサルデータオブジェクト(utag_data)
    • ユニバーサルタグ(utag.js)
    • データレイヤーオブジェクト(b)
    • 単一ページアプリケーション
    • 設定
    • デバッグ
    • APIリファレンス
    • リリースノート
  • サーバーサイド
  • C#
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • APIリファレンス
    • リリースノート
  • HTTP API
    • 概要
    • エンドポイント
    • データレイヤー
  • Java
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
    • リリースノート
  • Node
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • Python
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • Roku
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • Ruby
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • Unity
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス

このページはお役にたちましたでしょうか?

最終更新日 :: 2022年March月2日       ご意見有難うございます。
  • 手引き
  • プラットフォーム
  • パートナー
  • モバイル
  • 始める
  • Remote Commands
  • Android (Java)
  • Cordova
  • Flutter
  • iOS (Objective-C)
  • iOS (Swift)
  • React Native
  • Xamarin
  • ウェブ
  • AMP
  • Angular
  • JavaScript (Web)
  • サーバーサイド
  • C#
  • HTTP API
  • Java
  • Node
  • Python
  • Roku
  • Ruby
  • Unity