adjust-icon

SDK v5移行ガイド

事前準備

SDK v5にアップデートする前に、以下を行ってください。

  1. SDK v5はSDKシグネチャーの検証をネイティブにサポートします。現在SDKシグネチャーライブラリを使用している場合は、まずこれをアンインストールしてください。
  2. アプリが以下のバージョン以前のAPIバージョンを対象にしている場合、SDK v5を使用する前にアプリをアップデートする必要があります:
    • iOS: 12.0
    • tvOS: 12.0

ベータ版のSDKをインストールする

SDK v5の使用を開始するには、XCodeプロジェクトにdependencyとしてSDK v5を追加する必要があります。これを行うには、以下の手順に従ってください。

  1. 現在Podfileにある古いバージョンの SDK を全て削除します。

  2. 以下をPodfileファイルに追加します:

    Podfile
    pod 'Adjust', :git => 'https://github.com/adjust/ios_sdk.git', :branch => 'v5'
  3. pod installを実行してdependencyをインストールします。

変更内容

v5 SDKをインストールしたら、新しいAPIを使用するために既存のAdjustコードを更新する必要があります。

初期化メソッド

SDK v4では、SDKはADJConfigオブジェクトを設定し、[Adjust appDidLaunch]メソッドにパスすることで初期化されます。

SDK v5では、このメソッドは[Adjust initSdk]に改名されました。

設定

このセクションでは、SDK設定の変更について説明します。

SDKを無効化・有効化する

SDK v4では、BOOL値で[Adjust setEnabled]を呼び出すことで、SDKを有効化・無効化することができます。

  • SDKを無効化するには、[Adjust setEnabled:NO]を呼び出します。
  • SDKを有効化するには、[Adjust setEnabled:YES]を呼び出します。

より明確にするため、SDK v5では、この機能は別々のコマンドに分割されています。

  • SDKを無効化するには、[Adjust disable]を呼び出します。
  • SDKを有効化するには、[Adjust enable]を呼び出します。

バックグラウンドで情報を送信する

SDK v4では、[ADJConfig setSendInBackground]メソッドにtrue引数を付けて呼び出すことで、アプリがバックグラウンドで動作している間にSDKがAdjustに情報を送信することができます。

SDK v5では、アプリがバックグラウンドで動作している間にSDKがAdjustに情報を送信できるようにするには、引数なしで[ADJConfig enableSendingInBackground]メソッドを呼び出す必要があります。

AdServices情報の読み取りを無効化する

SDK v4では、[ADJConfig setAllowAdServicesInfoReading]メソッドにfalse引数を付けて呼び出すことで、Adjust SDKがAdServices情報を読み取らないようにすることができます。

SDK v5では、Adjust SDKがAdServices情報を読み取らないようにするには、引数なしでdisableAdServicesメソッドを呼び出す必要があります。

IDFAの読み取りを無効化する

SDK v4では、[ADJConfig setAllowIdfaReading]メソッドにfalse引数を付けて呼び出すことで、Adjust SDKがデバイスのIDFAを読み取らないようにすることができます。

SDK v5では、Adjust SDKがデバイスのIDFAを読み取らないようにするには、引数なしでdisableIdfaReadingメソッドを呼び出す必要があります。

アトリビューションにコストデータを有効化する

SDK v4では、[ADJConfig setNeedsCost]メソッドにtrue引数をつけて呼び出すことで、デバイスのアトリビューション情報のコストデータを有効化することができます。

SDK v5では、引数なしで[ADJConfig enableCostDataInAttribution]メソッドを呼び出す必要があります。

LinkMeを有効化する

SDK v4では、[ADJConfig setLinkMeEnabled]メソッドにtrue引数を付けて呼び出すことで、Adjust LinkMeを有効化できます。

SDK v5では、引数なしで[ADJConfig enableLinkMe]メソッドを呼び出す必要があります。

デバイスIDを1回だけ読み取る

SDK v4では、[ADJConfig setReadDeviceInfoOnceEnabled]メソッドにtrue引数を付けて呼び出すことで、起動時に1回だけデバイス識別子を読み込むようにSDKに指示することができます。

SDK v5では、引数なしで[ADJConfig enableDeviceIdsReadingOnce]メソッドを呼び出す必要があります。

オフラインモード

SDK v4では、BOOL引数で[Adjust setOfflineMode]を呼び出すことで、SDKでオフラインモードを有効化・無効化することができます。

より明確にするため、SDK v5では、この機能は別々のコマンドに分割されています。

  • SDKをオフラインモードに設定するには、[Adjust switchToOfflineMode]を呼び出します。
  • SDKをオンラインモードに戻すには、[Adjust switchBackToOnlineMode]を呼び出します。

Pushトークン

SDK v4では、[Adjust setDeviceToken]メソッドを使用してPushトークンを設定できます。

このメソッドはSDK v5では[Adjust setPushToken]に改名されています。

イベントバッファリング

SDK v4はイベントのバッファリングをサポートしています。この機能は、リクエストイベント、広告収益、Pushトークン、その他の情報をローカルバッファに保存し、後日送信します。

この設定はSDK v5では廃止されています。

カスタムユーザーエージェント文字列

SDK v4は、ユーザーエージェント文字列で[AdjustConfig setUserAgent]を呼び出すことによるカスタムユーザーエージェントの設定をサポートしています。

この設定はSDK v5では廃止されています。

既知のデバイスかどうかを設定する

SDK v4では、[AdjustConfig setIsDeviceKnown];メソッドを呼び出して、既知のデバイスかどうかをSDKに手動で通知することができます。

この設定はSDK v5では廃止されています。

SDKの起動開始を遅延させる

SDK v4では、[AdjustConfig setDelayStart];を最大 10秒 遅延させて呼び出すことで、SDKの開始を遅延させることができます。

この設定はSDK v5では廃止されています。

記録機能

このセクションでは、Adjustに情報を送信する機能の変更点について説明します。

セッションコールバックパラメーター

SDK v4では、[Adjust addSessionCallbackParameter]メソッドにキーと値のペアをパスすることでセッションパラメーターを追加し、[Adjust removeSessionCallbackParameter]メソッドを使用して個々のパラメーターを削除することができます。

SDK v5では、セッションパラメーターはグローバルパラメーターに改名されています。SDK v5では、キーと値を位置引数として代入する代わりに、forKeyインスタンスメソッドを使用してキーに値を代入します。

セッションパートナーパラメーター

SDK v4では、[Adjust addSessionPartnerParameter]メソッドにキーと値のペアをパスすることでセッション パートナー パラメーターを追加し、[Adjust removeSessionPartnerParameter]メソッドを使用して個々のパラメーターを削除することができます。

SDK v5では、セッション パートナー パラメーターはグローバル パートナー パラメーターに改名されました。SDK v5では、キーと値を位置引数として代入する代わりに、forKeyインスタンスメソッドを使用してキーに値を代入します。

サブスクリプション情報を送信する

SDK v4では、ADJSubscriptionクラスを使ってAdjustに送信するサブスクリプション情報のペイロードを作成することができます。

より明確にするため、SDK v5では、このクラスはADJAppStoreSubscriptionに改名されました。

イベントの重複排除

SDK v4では、イベント重複排除はイベントtransaction IDと組み合わされ、最大10個のユニークIDに制限されています。

SDK v5では、この機能はtransaction IDから切り離され、イベント重複排除のためにdeduplicationIdという新しいIDフィールドが追加されました。ユーザーは、重複イベントを識別するためにリストに追加可能なdeduplicationIdの数にカスタム制限を設定できます。デフォルトでは、制限は 10 に設定されています。

AdjustAttributionクラス

SDK v4では、AdjustAttributionコールはadidというプロパティを持ちます。SDK v5 では、AdjustAttribution クラスからadidプロパティが削除されました。デバイスのADIDを取得するには、[Adjust adidWithCompletionHandler]ゲッターメソッドを使用してください。

SDK v4では、[Adjust appWillOpenUrl]メソッドにディープリンク情報をパスすることができます。

SDK v5では、わかりやすくするためにこれは[Adjust processDeeplink]に改名されています。

ディファードディープリンクのコールバック

SDK v4では、adjustDeepLinkResponseメソッドを呼び出してディファード ディープリンク コールバックを処理できます。

より明確にするため、SDK v5では、このメソッドはadjustDeferredDeeplinkReceivedに改名されています。全ての引数は同じです。

プライバシー機能

このセクションでは、Adjust SDKのプライバシー機能の変更点について説明します。

児童オンラインプライバシー保護法(COPPA)コンプライアンス

SDK v4では、COPPAコンプライアンスADJConfigクラスを使用して設定され、SDKの初期化中に読み込まれます。つまり、SDKを初期化したら値を更新することはできません。

SDK v5では、このメソッドはAdjustクラスで利用可能です。つまり、[Adjust enableCoppaCompliance]を呼び出してCOPPAコンプライアンスを有効化するか、[Adjust disableCoppaCompliance]を呼び出してCOPPAコンプライアンスを無効化することで、いつでも設定を変更することができます。

特定のソースの広告収益を送信する

SDK v4では、広告収益ソースはADJConfigクラスの定数として定義されています。SDK v5では、広告収益ソースは文字列としてパスされる必要があります。

データレジデンシーとURL戦略を設定する

SDK v4では、URL戦略とデータレジデンシードメインはADJConfigクラスの定数として定義されています。

[adjustConfig setUrlStrategy:ADJDataResidencyEU];

SDK v5では、選択したドメインを配列としてパスする必要があります。また、以下を設定することもできます:

  • withSubdomainsBOOL):ソースにサブドメインのプレフィックスを付けるかどうか。
  • andDataResidencyBOOL):ドメインをデータレジデンシーに使用するかどうか。
NSArray *domain = [];
[adjustConfig setUrlStrategy:domain withSubdomains:YES
andDataResidency:YES];

SDK v5でURL戦略を設定する方法については、以下の表をご確認ください。

サードパーティとの共有をグローバルに無効化する

SDK v4では、Adjust.disableThirdPartySharing()メソッドを呼び出すことで、サードパーティとの情報共有をグローバルに無効化することができます。

この機能はSDK v5では削除されました。SDK v5では、[Adjust trackThirdPartySharing]メソッドを使用してサードパーティとのデータ共有を有効化または無効化できます。

SKAdNetworkとATT

このセクションでは、SDK v5におけるSKAdNetworkとApp Tracking Transparency(ATT)機能の変更点について説明します。

SKAdNetworkの通信を無効化する

SDK v4では、[ADJConfig deactivateSKAdNetworkHandling]メソッドを呼び出すことで、SDKがSKAdNetworkと通信しないようにすることができます。

より明確にするため、SDK v5では、このメソッドは[ADJConfig disableSkanAttribution]に改名されています。

承認ステータスの変更を確認

SDK v4では、[Adjust checkForNewAttStatus]メソッドを使ってSDKにユーザーのATTステータスを読み込ませ、Adjustのサーバーに情報を転送することができます。

このメソッドはSDK v5では廃止されています。

Conversion valueのアップデートを受信する

SDK v4では、adjustConversionValueUpdatedメソッドを使用してSKAdNetworkのアップデートを受信することができます。

SDK v5では、これら2つのメソッドは、型付けされていない辞書を返す単一のadjustSkanUpdatedWithConversionDataメソッドに置き換えられました。現在サポートされているキーは以下の通りです:

  • conversion_value:更新されたconversion value
  • coarse_value:更新された粗いconversion value
  • lock_window:コンバージョン期間が終了する前にポストバックを送信するかどうか
  • error:更新によって返されたエラーメッセージ

Conversion valueを更新する

SDK v4では、updateConversionValueメソッドを使ってAdjustに更新されたconversion valueを送ることができます。このメソッドはAppleが廃止したupdateConversionValueメソッドをラップするため、SDK v5では削除されています。

SDK v5でconversion valueを更新するには、以下の引数で[Adjust updateSkanConversionValue]メソッドを使用します:

  • conversionValueNSInteger):更新されたconversion value
  • coarseValueNSString):更新された粗いconversion value
  • lockWindowBOOL):コンバージョン期間が終了する前にポストバックを送信するかどうか

App Tracking Transparency認証ラッパー

SDK v4では、[Adjust requestTrackingAuthorizationWithCompletionHandler]メソッドを使用してユーザーのATT認証ステータスの変更を処理できます。

より明確にするため、SDK v5では、これは[Adjust requestAppTrackingAuthorizationWithCompletionHandler]に改名されました。

デバイス情報を取得

SDK v4では、全てのデバイス情報ゲッターメソッドは同期的に実行されます。SDK v5では、これらのメソッドは非同期に実行されるように変更されまています。非同期処理の完了時に情報を処理するコールバック関数を追加することができます。

プラグイン

Adjust SDKは機能を拡張するプラグインをサポートしています。このセクションでは、SDK v5でのプラグインに関する変更点を説明します。

削除されたプラグイン

SDK v5では以下のプラグインが削除されました:

  • Criteo
  • Trademob
  • Sociomatic