リリースノート
以下は、Tealium for Swift ライブラリの各リリースの変更の完全なリストです。
1.9.0 - 1.9.7 (2020)
1.9.7 (2020年9月)
低影響の変更
- リモートコマンドモジュール内のプロセスをバックグラウンドスレッドに移動しました
- デッドロックを防ぐために、一部の並行キューを直列キューに更新しました
1.9.6 (2020年7月)
低影響の変更
- 複数のスレッドが同時に永続データストアに保存しようとすることによりクラッシュが発生するバグを修正しました。
- タグ管理モジュールが依存関係として含まれているが、TiQのモバイルパブリッシュ構成で有効にされていない場合にクラッシュが発生するバグを修正しました。
1.9.5 (2020年6月)
低影響の変更
- リモートパブリッシュ構成機能が有効になっており、リモートファイルに非標準のコンテンツが含まれている場合にクラッシュが発生するバグを修正しました。このバグが将来のリリースで再発するのを防ぐために、ユニットテストを追加しました。
- パブリックリポジトリにユニットテストを追加しました。
UIWebViewを参照する古いコードコメントを削除しました。
既知の問題
- iOS バージョン 10.3.3 および 10.3.4 では、アプリが起動するとすぐにクラッシュする可能性がある Xcode コンパイラのバグがあります。これは 32 ビットの iOS デバイス (iPhone 5C およびそれ以下、iPad 4 世代およびそれ以下) に影響します。回避策は、「Dead Code Stripping」ビルドオプションを「NO」に変更することです。これは、プロジェクト構成 > (アプリのターゲット) > ビルド構成 > リンキング > Dead Code Stripping にあります。この回避策は、上記のデバイスをターゲットにしている場合にのみ必要です。
1.9.4 (2020年4月)
低影響の変更
- Carthage ビルドに影響を与える問題を修正しました。PLCrashReporter 依存関係が一部のプラットフォームでビルドに失敗する問題を修正しました。
- リモートコマンドモジュールがリモートパブリッシュ構成で有効になっている場合、リモートコマンドが複数回トリガーされる場合があるバグを修正しました。
- Swift Package Manager を使用してライブラリをインストールした場合、Swift Package Manager 以外の iOS 以外のプラットフォームで SwiftUI プレビューが失敗する問題を修正しました。
1.9.3 (2020年3月)
低影響の変更
機能的な変更はありません。Carthage ビルドに影響を与える問題を修正しました。
1.9.2 (2020年3月)
低影響の変更
- DispatchQueue モジュールのバグを修正しました。最大キューサイズが
-1に構成されている場合にクラッシュする問題を修正しました。 PLCrashReporter依存関係を更新しました。
1.9.1 (2020年2月)
低影響の変更
このバージョンでは機能に変更はありません。バージョン番号を 1.9.1 に変更して Carthage 依存関係マネージャーの問題を修正しました。その他の変更はありません。
1.9.0 (2020年2月)
新機能
- モバイルパブリッシュ構成 のサポート
モバイルパブリッシュ構成はデフォルトで有効になっており、使用しない場合は無効にする必要があります。
* Tealium iQ モバイルパブリッシュ構成インターフェースからイベントバッチサイズなどの特定の構成オプションをリモートで変更する機能を追加します。
- これは、Tealium iOS (Objective-C) ライブラリと Tealium Android ライブラリで既に存在している機能と一致します。詳細を見る。
- Swift Package Manager のサポート。詳細を見る。
- Swift 5 のサポート
- 古い Swift バージョンのサポートは削除されました。Swift 5 を使用できない場合は、Tealium Swift 1.8.2 を使用してください。
- Swift 5+ を使用している場合、アプリに Swift ランタイムをバンドルする必要はもはやありません。これにより、アプリバンドルのサイズが約 40MB 減少します。
- Mac Catalyst のサポート
- macOS Catalina (10.15+) で実行できる iOS アプリをサポートします。
- ライフサイクルトラッキングメソッドがパブリック API の一部として利用可能になりました。詳細を見る。
- _オプション_の位置情報トラッキングモジュール。詳細を見る。
- 有効なモジュールのリストが各トラックリクエストに追加されました。たとえば、
enabled_modules=["attribution","tagmanagement"]。
低影響の変更
- バグ修正: 低メモリのシナリオでクラッシュが発生することがあるライフサイクルモジュールの再現不可能なバグを修正しました。120
- ライフサイクルの自動トラッキングを無効にすることができるようになりました。このオプションを使用すると、自動生成されたアプリのライフサイクルイベントが抑制されます。詳細を見る
Coreモジュールの Objective-CNSErrorへの依存関係を削除しました。Swift Package Manager のサポートに必要です。また、ブリッジングヘッダの暗黙のインポートの問題も修正されました。125Tealium.updateメソッドを最適化しました。updateメソッドが呼び出されたときにTealiumConfigの構成を変更すると、モジュールが解放されて再初期化されなくなりました。
高影響の変更
TealiumConfigクラスのセッターとゲッターは非推奨となり、プロパティに置き換えられました。たとえば、config.setBatchingEnabled(true)->config.batchingEnabled = true。セッターとゲッターは引き続き正常に機能しますが、コンパイラの警告を回避するためにプロパティに切り替えることをお勧めします。- Wi-Fi のみの送信オプションを追加しました。これは、モバイルパブリッシュ構成を介して制御できます。有効にすると、Wi-Fi が利用できない場合はヒットがキューに入れられます。
- バッテリーセーバーオプションを追加しました。これは、モバイルパブリッシュ構成を介して制御できます。有効にすると、低電力モードが有効になっている場合、またはデバイスのバッテリー残量が 20% 未満の場合は、ヒットがキューに入れられます。
既知の問題
- 現在、WebKit のバグがあり、アプリをデバッグしているときに LLDB コンソールに誤ったエラーメッセージが表示されることがあります。以下は、エラーメッセージの例です。
2020-01-23 11:48:37.219410+0000 TestApp[853:82765] [Process] kill() returned unexpected error 1
このエラーは、Tag Management モジュールを使用している場合に表示されますが、Apple が WebKit ライブラリの問題を修正するまでの間、アプリには影響しません。詳細を見る。
1.70 - 1.8.2 (2019)
1.8.2 (2019年12月)
低影響の変更
- リモートコマンドのスレッド関連のクラッシュを修正しました 121
- 低メモリに関連するクラッシュを解決するために、保存されるライフサイクルセッションを 20 セッションに減らしました 120
- 一部の場合に完全な
Tealiumクラスの解放ができないような循環参照を修正しました TealiumInstanceManagerにremoveInstanceメソッドを追加し、Tealiumを完全に解放できるようにしました- WKWebView に対するクッキーオブザーバーの使用をやめるための構成オプションを追加しました 117 (
config.shouldAddCookieObserver = false) - モジュールの初期化を最適化し、モジュールリストに存在するモジュールのみ
initが呼び出されるようにしました - タグ管理モジュールの完了ブロックが予期しない詳細 (エラー/情報) を受け取らない問題を修正しました。関連: 118
1.8.1 (2019年11月)
低影響の変更
- タグ管理モジュールで時折発生するクラッシュを修正しました。
1.8.0 (2019年11月)
新機能
- イベントバッチング
- 1 回のヒットで最大 10 のイベントを Tealium Customer Data Hub に送信できます
- タグ管理の場合、イベントはプロファイルの JavaScript タグによって個別に処理されるため、
WKWebViewインスタンスにイベントがバッチでディスパッチされます。 - Tealium EventStream/AudienceStream/Event Data Framework 製品の場合、Collect モジュールを使用してイベントが単一の HTTP リクエストでディスパッチされます。リクエストは Gzip 圧縮されます。イベントの制限が達成されると (最大 10 イベント)、接続が利用可能な場合はすぐにディスパッチされます。
- タグ管理の場合、イベントはプロファイルの JavaScript タグによって個別に処理されるため、
- イベントバッチングを無効にするには、バッチサイズを 1 に構成します
- 1 回のヒットで最大 10 のイベントを Tealium Customer Data Hub に送信できます
- オプションの Visitor Service モジュール (AudienceStream CDP が必要)。プロファイルが変更されるたびにリアルタイムで訪問プロファイルを取得できます。
- 内部デバイス識別子をキャプチャする新しい変数「device_type」を追加しました。たとえば、iPhone8,4 などです。
- Visitor Service と Event Batching (DispatchQueue モジュール) の追加のヘッダドキュメントを追加しました。
- Visitor Service モジュールとプロファイルの URL をオーバーライドする機能を追加しました
- iOS 12.0 デバイスの DeviceData モジュールで発生する可能性のあるクラッシュを修正しました。これは、iOS 12.0 のネットワークサブスクライバ情報 API の既知のバグによるものです。バグが修正された iOS 12.1 にバージョンチェックを更新し、iOS 12.0 の場合は古い API を使用するようにしました。
- 複雑なクロージャ内のコンパイラのヒントを追加して、Xcode 10.3 でプロジェクトをビルドできるようにしました。
- リモートコマンドの将来の互換性のための remote_api 呼び出しを追加しました。これにより、Tag Management の Web ビューに追加の呼び出しがトリガーされます (モジュールが有効な場合)。デフォルトでは無効です。有効にするための構成オプション:
config.setIsRemoteAPIEnbled(true) - 訪問 ID を取得するためのメソッドを追加しました
高影響の変更
- 永続保存が UserDefaults から JSON ベースのファイル保存に移動しました。データはデフォルトでデバイスのキャッシュディレクトリに保存されますが、これは構成で上書きできます。
- 可能な限り、すべての処理はバックグラウンドキューで実行されるようになりました。Tag Management モジュールを使用している場合、一部の処理はメインスレッドで実行される必要があるため、メインスレッドでの処理が制限されます。
- 次のモジュールが削除されました:
- FileStorage (Core の一部である DiskStorage に置き換えられました)
- DefaultsStorage (Core の一部である DiskStorage に置き換えられました)
- DataSource (VolatileData モジュールに統合されました)
- タグ管理の最適化 (Webview)
UIWebViewが削除されました。デフォルトはWKWebViewです (Tag Management モジュールを使用している場合のみ)。iOS バージョン <11 のWKWebViewAPI のバグのため、これらのデバイスではクッキーが永続化されない場合があります。vdataディスパッチャが削除されました。すべての Collect モジュールのリクエストは、POST リクエストとして/eventエンドポイントに送信されます。バッチリクエストの場合は/bulk-eventです。- 接続チェックが改善されました。
- 接続のクラッシュが修正されました (
TealiumRepeatingTimerの解放) - プロジェクトを Xcode11 で動作するように更新しました
- クラッシュレポーターの依存関係が修正されました (現在は PLCrashReporter のバイナリビルドを使用しています)
低影響の変更
- Attribution モジュールが Apple Search Ads API によって提供される追加のデータポイントを含むように更新されました
- DeviceData モジュールのデバイス名が最新の Apple デバイスを含むように更新されました
- ロギングの改善
- Swiftdoc の改善。すべてのパブリックメソッドに Xcode でクイックヘルプが利用できるようになりました
1.7.3 (2019年11月)
低影響の変更
- Xcode 11 での PLCrashReporter 依存関係の修正。ソースからビルドする代わりに、事前にビルドされたフレームワークを使用するようになりました。
1.7.2 (2019年8月)
低影響の変更
- リモートコマンドのユニットテストをサポートするためのマイナーな内部変更を行いました。
1.7.1 (2019年7月)
高影響の変更
WKWebViewのUIViewの自動検出ロジックを改善しました。これにより、複雑なビューヒエラルキーの場合でも、ビューのインスタンスを手動で渡す必要がなくなります。自分自身のアプリで検証することが重要です。アプリのさまざまな画面でトラッキングコールがアプリを離れていくのを確認してください。これには、プッシュ通知から起動される可能性のあるビューも含まれます。ビューヒエラルキーが変更される可能性があるためです。
1.7.0 (2019年5月)
高影響の変更
TagManagementモジュール がデフォルトでWKWebViewを使用するようになりました。アップグレードする前に、タグ管理のドキュメントを注意深く読んでください。- 同意マネージャー: 同意のログ記録が有効になっている場合、監査目的で「decline_consent」というイベントが送信されます (GDPR の準拠)。
低影響の変更
- リモートコマンドのバグを修正しました。Web ビューへのコールバックが実行されない問題を修正しました。
- サンプルアプリを Xcode 10.2 と互換性があるように更新しました。
- 新機能: トレース。AudienceStream トレースセッションに参加および終了するための簡単な方法を提供します。アクティブなビジターセッションも終了します。
- 複雑なビューヒエラルキーを使用して
TagManagementを使用する方法を示す新しいサンプルアプリを追加しました。 - データレイヤー変数の標準化 (詳細は データレイヤー を参照)。
1.50 - 1.6.7 (2018)
1.6.7 (2018年12月)
- 初期化完了時にモジュールの応答を含む init コンプリーションを再導入しました。
Tealiumは、すべてのモジュールが初期化された状態で、コンプリーションブロックが呼び出されるようになります。 - コンプリーションは 1 回だけ呼び出されます。
TagManagementの Web ビューの後続のリロードがリモートコマンドを再度有効にしないようになりました。- パラメータなしの
VolatileData.getData()メソッドを再導入しました。
1.6.6 (2018年12月)
低影響の変更
- アプリ拡張で
DeviceDataモジュールを使用できるように修正しました (拡張機能でUIApplication.sharedに安全にアクセスできるようになりました)。
1.6.5 (2018年11月)
高影響の変更
WKWebViewのUIViewの自動検出ロジックを改善しました。これにより、ほとんどの場合において複雑なビューヒエラルキーが考慮されるようになりました。手動で UIView インスタンスを渡す必要はありません。自分自身のアプリで検証することが重要です。アプリのさまざまな画面でトラッキングコールがアプリを離れていくのを確認してください。これには、プッシュ通知から起動されるビューも含まれます。ビューヒエラルキーが変更される可能性があるためです。
1.6.4 (2018年10月)
低影響の変更
- Carthage で使用するために、
TealiumMulticastDelegateとTealiumLifecyclePersistentDataクラスがビルドターゲットに含まれるように Builder プロジェクトを更新しました。 - アプリバージョンと追加のキー値
app_build(アプリケーションビルド番号) を追加したAppDataモジュールを更新しました。
1.6.3 (2018年9月)
低影響の変更
- Xcode 11 での PLCrashReporter 依存関係の修正。ソースからビルドする代わりに、事前にビルドされたフレームワークを使用するようになりました。
1.6.2 (2018年9月)
高影響の変更
- セッション ID の修正。Tealium セッション ID は 30 分後に期限切れになるように構成されました。この値は構成可能です。
1.6.1 (2018年9月)
高影響の変更
- セッション ID の修正。Tealium セッション ID は 30 分後に期限切れになるように構成されました。この値は構成可能です。
1.6.0 (2018年7月)
- 高影響の変更
- 同意マネージャー モジュールの初版リリース。これはデフォルトで有効になっています。同意管理が必要ない場合は、明示的に無効にする必要があります。そうしないと、トラッキングコールは送信されません。
- 低影響の変更
Tealiumの初版リリース。
最終更新日 :: 2024年March月28日