事前準備
SDK v5にアップデートする前に、以下を行ってください。
- SDK v5はSDKシグネチャーの検証をネイティブにサポートします。現在SDKシグネチャーライブラリを使用している場合は、まずこれをアンインストールしてください。
- SDK v5の最小サポート対象APIバージョンが更新されました。以前のバージョンをターゲットにしている場合は、まずアプリをアップデートする必要があります。
- iOS: 12.0
- Android: 21
SDKのインストール
SDK v5をインストールする前に、まずプロジェクトから全てのSDK v4アセットとコードを削除する必要があります。
プロジェクトから全てのSDK v4アセットを削除するには、新しいプロジェクトを生成するのが最も簡単な方法です。
既存のプロジェクトに変更を追加したい場合は、以下の手順に従ってAdjust SDK v4の全てのアセットを削除してください。
-
Assets
ディレクトリ内の既存のAdjust
インストールを削除します。 -
Xcodeプロジェクトから
Adjust
への全てのリファレンスを削除します。- プロジェクトの Libraries セクションの
Adjust
ディレクトリを削除します。 - General タブを開き、 Frameworks、Libraries、Embedded Contentの 下にある
Adjust.a
ライブラリを削除します。 - オプション :SDK v4では、アプリターゲットの その他のリンカーフラグ 設定で
-ObjC
フラグを追加します。これがSDKによって自動的に追加された場合にのみ、このフラグを削除してください。
- プロジェクトの Libraries セクションの
-
Android Studioプロジェクトで
Adjust
へのリファレンスを全て削除します。- プロジェクトの
libs
ディレクトリ内にあるadjust-android.jar
ライブラリを見つけて、削除します。
- プロジェクトの
プロジェクトから全てのSDK v4アセットを削除したら、SDK v5をインストールできるようになります。これを行うには、以下のいずれかを実行してください。
- GitHubのリリースページからAdjust
unitypackage
をダウンロードし、プロジェクトにインポートする。 - Unity Package Managerを使用して、パッケージをインストールする。
- Unity editorで、 Package Manager ウィンドウを選択します。
- Add package from git URLを 選択します。
- 次のURLを入力します:
https://github.com/adjust/unity_sdk.git
。
iOSとAndroid SDKをインストールする
SDK v5は、iOSとAndroid SDKをバイナリ依存として使用しなくなりました。基盤となるiOSおよびAndroid SDKをインストールするには、External Dependency Manager for Unity (EDM4U)を使用して、CocoaPodsとMavenからパッケージをインストールする必要があります。
変更内容
SDK v5はメジャーバージョンアップです。つまり、コードを更新しなければならないような大きな変更があるということです。
v5 SDKをインストールしたら、新しいAPIを使用するために既存のAdjustコードを更新する必要があります。
SDKの名前空間
SDKの名前空間の名前がcom.adjust.sdk
からAdjustSdk
に変更されました。
初期化メソッド
SDK v4では、SDKはAdjustConfig
オブジェクトを設定し、Adjust.start()
メソッドにパスすることで初期化されます。
SDK v5では、このメソッドの名前はAdjust.InitSdk()
に変更されました。
シグネチャー設定
SDK v5には、 SDKシグネチャーライブラリが含まれています。これをテストするにはシグネチャーライブラリ連携ガイドの手順に従ってください。
シグネチャーの保護機能は、デフォルトで非アクティブになっています。これを有効化するには、以下の手順に従ってください
設定
このセクションでは、SDK設定の変更について説明します。
ログレベルの設定
SDK v4では、 AdjustConfig.setLogLevel()
メソッドにAdjustLogLevel
定数をパスすることでログレベルを設定できます。
SDK v5では、 AdjustConfig
インスタンスのLogLevel
プロパティにAdjustLogLevel
定数を割り当てる必要があります。
SDKを無効化・有効化する
SDK v4では、bool
値でAdjust.setEnabled()
を呼び出すことで、SDKを有効化・無効化することができます。
- SDKを無効化するには、
Adjust.setEnabled(false)
を呼び出します。 - SDKを有効化するには、
Adjust.setEnabled(true)
を呼び出します。
より明確にするため、SDK v5では、この機能は別々のコマンドに分割されています。
- SDKを無効化するには、
Adjust.Disable()
を呼び出します。 - SDKを有効化するには、
Adjust.Enable()
を呼び出します。
バックグラウンドで情報を送信する
SDK v4では、AdjustConfig.setSendInBackground()
メソッドにtrue
引数を付けて呼び出すことで、アプリがバックグラウンドで動作している間にSDKがAdjustに情報を送信することができます。
SDK v5では、AdjustConfig
インスタンスのIsSendingInBackgroundEnabled
プロパティをtrue
に設定し、アプリがバックグラウンドで動作している間にSDKがAdjustに情報を送信できるようにする必要があります。
プリインストールアプリ計測
SDK v4では、 AdjustConfig.setPreinstallTrackingEnabled
メソッドを使用して、プリインストールアプリの計測を有効にできます。
SDK v5では、 AdjustConfig
インスタンスのIsPreinstallTrackingEnabled
プロパティをtrue
に設定する必要があります。
SDK v4では、 AdjustConfig.setPreinstallFilePath
メソッドを使用して、プリインストールされたアプリ情報を含むパスを設定できます。
SDK v5では、AdjustConfig
インスタンスのPreinstallFilePath
プロパティに、プリインストールされたアプリ情報を含むファイルパスを設定する必要があります。
SDK v4では、 AdjustConfig.setDefaultTracker()
メソッドを使用して、デフォルトリンクトークンを設定して、プリインストールアプリのインストールを計測できます。
SDK v5では、リンクをAdjustConfig
インスタンスのDefaultTracker
プロパティに直接割り当てる必要があります。
外部デバイスIDの設定
SDK v4では、 AdjustConfig.setExternalDeviceId()
メソッドにIDをパスすることで外部デバイスIDを設定できます。
SDK v5では、 AdjustConfig
インスタンスのExternalDeviceID
プロパティにIDを直接割り当てる必要があります。
MetaアプリIDを設定する
SDK v4では、AdjustConfig.setFbAppId()
メソッドを使用してPushトークンを設定できます。
SDK v5では、 AdjustConfig
インスタンスのFbAppId
プロパティにMetaアプリIDを割り当てる必要があります。
AdServices情報の読み取りを無効化する
SDK v4では、AdjustConfig.setAllowAdServicesInfoReading()
メソッドにfalse
引数を付けて呼び出すことで、Adjust SDKがAdServices情報を読み取らないようにすることができます。
SDK v5でAdjust SDKがAdServices情報を読み取らないようにするには、 AdjustConfig
インスタンスのIsAdServicesEnabled
プロパティをfalse
に設定する必要があります。
IDFAの読み取りを無効化する
SDK v4では、AdjustConfig.setAllowIdfaReading()
メソッドにfalse
引数を付けて呼び出すことで、Adjust SDKがデバイスのIDFAを読み取らないようにすることができます。
SDK v5でAdjust SDKがデバイスのIDFAを読み取らないようにするには、 AdjustConfig
インスタンスのIsIdfaReadingEnabled
プロパティをfalse
に設定する必要があります。
アトリビューションにコストデータを有効化する
SDK v4では、Adjust.setNeedsCost()
メソッドにtrue
引数をつけて呼び出すことで、デバイスのアトリビューション情報のコストデータを有効化することができます。
SDK v5でデバイスのアトリビューション情報のコストデータを有効化するには、 AdjustConfig
インスタンスのIsCostDataInAttributionEnabled
プロパティをtrue
に設定する必要があります。
LinkMeを有効化する
SDK v4では、AdjustConfig.setLinkMeEnabled()
メソッドにtrue
引数を付けて呼び出すことで、Adjust LinkMeを有効化できます。
SDK v5でLinkMeを有効化するには、 AdjustConfig
インスタンスのIsLinkMeEnabled
プロパティをtrue
に設定する必要があります。
デバイスIDを1回だけ読み取る
SDK v4では、AdjustConfig.setReadDeviceInfoOnceEnabled()
メソッドにtrue
引数を付けて呼び出すことで、起動時に1回だけデバイス識別子を読み込むようにSDKに指示することができます。
SDK v5では、 AdjustConfig
インスタンスのIsDeviceIdsReadingOnceEnabled
プロパティをtrue
に設定し、SDKがデバイスIDを1回だけ読み取るように指示する必要があります。
オフラインモード
SDK v4では、bool
引数でAdjust.setOfflineMode()
を呼び出すことで、SDKでオフラインモードを有効化・無効化することができます。
より明確にするため、SDK v5では、この機能は別々のコマンドに分割されています。
- SDKをオフラインモードに設定するには、
Adjust.SwitchToOfflineMode()
を呼び出します。 - SDKをオンラインモードに戻すには、
Adjust.SwitchBackToOnlineMode()
を呼び出します。
イベントバッファリング
SDK v4はイベントのバッファリングをサポートしています。この機能は、リクエストイベント、広告収益、Pushトークン、その他の情報をローカルバッファに保存し、後日送信します。
この設定はSDK v5では廃止されています。
カスタムユーザーエージェント文字列
SDK v4では、ユーザーエージェント文字列でAdjustConfig.setUserAgent()
を呼び出すことによるカスタムユーザーエージェントの設定をサポートしています。
この設定はSDK v5では廃止されています。
既知のデバイスかどうかを設定する
SDK v4では、AdjustConfig.setDeviceKnown()
メソッドを呼び出して、既知のデバイスかどうかをSDKに手動で通知することができます。
この設定はSDK v5では廃止されています。
SDKの起動開始を遅延させる
SDK v4では、AdjustConfig setDelayTimer()
を最大 10秒 遅延させて呼び出すことで、SDKの開始を遅延させることができます。
この設定はSDK v5では廃止されています。
記録機能
このセクションでは、Adjustに情報を送信する機能の変更点について説明します。
セッションコールバックパラメーター
SDK v4では、Adjust.addSessionCallbackParameter()
メソッドにキーと値のペアをパスすることでセッションパラメーターを追加し、Adjust.removeSessionCallbackParameter()
メソッドを使用して個々のパラメーターを削除することができます。
SDK v5では、セッションパラメーターはグローバルパラメーターに改名されています。
セッションパートナーパラメーター
SDK v4では、Adjust.addSessionPartnerParameter()
メソッドにキーと値のペアをパスすることでセッション パートナー パラメーターを追加し、Adjust.removeSessionPartnerParameter()
メソッドを使用して個々のパラメーターを削除することができます。
SDK v5では、セッション パートナー パラメーターはグローバル パートナー パラメーターに改名されました。
成功および失敗コールバック
SDK v4では、 AdjustConfig.setSessionSuccessDelegate()
およびAdjustConfig.setSessionFailureDelegate()
メソッドにそれぞれデリゲート関数をパスすることで、セッションの成功および失敗コールバックを設定できます。
SDK v5では、 AdjustConfig
インスタンスのSessionSuccessDelegate
とSessionFailureDelegate
プロパティを関連するデリゲート関数に設定する必要があります。
イベントの成功と失敗のコールバックにも、同じ変更が適用されます。SDK v4では、それぞれAdjustConfig.setSessionSuccessDelegate()
とAdjustConfig.setSessionFailureDelegate()
メソッドにデリゲート関数を渡すことで、これらが設定されます。
SDK v5では、 AdjustConfig
インスタンスのEventSuccessDelegate
とEventFailureDelegate
プロパティを関連するデリゲート関数に設定する必要があります。
サブスクリプション情報を送信する
このセクションでは、Adjust SDKのサブスクリプション送信に関する変更について説明します。
App Storeのサブスクリプション
以下のクラスプロパティは、SDK v5で直接設定する必要があります:
TransactionDate
SalesRegion
以下のセッターの名前が変更されました:
addCallbackParameter
->AddCallbackParameter
addCallbackParameter
->AddPartnerParameter
変更内容の例は以下のとおりです:
Play ストア サブスクリプション
以下のクラスプロパティは、SDK v5で直接設定する必要があります:
PurchaseTime
以下のセッターの名前が変更されました:
addCallbackParameter
->AddCallbackParameter
addCallbackParameter
->AddPartnerParameter
変更内容の例は以下のとおりです:
AdjustEvent クラス
以下のクラスプロパティは、SDK v5で直接設定する必要があります:
CallbackId
TransactionId
ProductId
PurchaseToken
以下のセッターの名前が変更されました:
setRevenue
->SetRevenue
addCallbackParameter
->AddCallbackParameter
addCallbackParameter
->AddPartnerParameter
receipt
プロパティがAdjustEvent
クラスから削除されました。
変更内容の例は以下のとおりです:
イベントの重複排除
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.GetAdid()
ゲッターメソッドを使用してください。
さらに、 AdjustAttribution
クラスの全ての内部メンバーは公開プロパティになります。
アトリビューションがコールバックを変更
SDK v4では、 AdjustConfig.setAttributionChangedDelegate()
関数にデリゲート関数を割り当てることで、デバイスのアトリビューションが変化した時にデリゲート関数を呼び出すことができます。
SDK v5では、 AdjustConfig
インスタンスのAttributionChangedDelegate
プロパティにデリゲート関数を割り当てる必要があります。
ディープリンク
このセクションでは、SDK v5でのディープリンクに関する変更点を説明します。
ディープリンクを使用したリアトリビューション
SDK v4では、Adjust.appWillOpenUrl()
メソッドにディープリンク情報をパスすることができます。
SDK v5では、Adjust.ProcessDeeplink()
に改名されています。ディープリンクを作成するための新しいAdjustDeeplink
クラスが追加されました。ディープリンクを処理するには、ディープリンクURLでAdjustDeeplink
オブジェクトをインスタンス化し、 Adjust.ProcessDeeplink
メソッドにパスしてください。
ディファードディープリンクをローンチする
SDK v4では、AdjustConfig.setLaunchDeferredDeeplink()
メソッドを呼び出してディファード ディープリンク コールバックを処理できます。
SDK v5でSDKがディープリンクを開くには、 AdjustConfig
インスタンスのIsDeferredDeeplinkOpeningEnabled
プロパティをtrue
に設定する必要があります。
プライバシー機能
このセクションでは、Adjust SDKのプライバシー機能の変更点について説明します。
児童オンラインプライバシー保護法(COPPA)コンプライアンス
SDK v4では、 bool
値でAdjustConfig
インスタンスのsetCoppaCompliantEnabled
メソッドを呼び出すことで、アプリがCOPPAに準拠していることをマークすることができます。
SDK v5では、AdjustConfig
インスタンスのIsCoppaComplianceEnabled
プロパティをbool
値に設定する必要があります。
Playストアの子供向けアプリ
SDK v4では、AdjustConfig
クラスを使用してアプリをPlayストアの子供向けアプリとして表示できます。このプロパティはSDKの初期化中に読み込まれるため、SDKを初期化したら値を更新することはできません。
SDK v5では、コンプライアンスを有効にするには、AdjustConfig
インスタンスのIsPlayStoreKidsComplianceEnabled
プロパティをtrue
に設定する必要があります。
データレジデンシーとURL戦略を設定する
SDK v4では、URL戦略とデータレジデンシーのドメインはAdjustConfig
クラスの定数として定義されています。
SDK v5では、選択したドメインを配列としてパスする必要があります。また、以下を設定することも可能です:
shouldUseSubdomains
(bool
):ソースにサブドメインのプレフィックスを付けるかどうか。isDataResidency
(bool
):ドメインをデータレジデンシーに使用するかどうか。
SDK v5でURL戦略を設定する方法については、以下の表をご確認ください。
v4 | v5 - メインおよびフォールバックドメイン | v5 - サブドメインの使用 | v5 - データレジデンシー |
---|---|---|---|
AdjustConfig.AdjustDataResidencyEU | "eu.adjust.com" | true | true |
AdjustConfig.AdjustDataResidencyTR | "tr.adjust.com" | true | true |
AdjustConfig.AdjustDataResidencyUS | "us.adjust.com" | true | true |
AdjustConfig.AdjustUrlStrategyChina | "adjust.world" 。 "adjust.com" | true | false |
AdjustConfig.AdjustUrlStrategyCn | "adjust.cn" 。 "adjust.com" | true | false |
AdjustConfig.AdjustUrlStrategyCnOnly | "adjust.cn" | true | false |
AdjustConfig.AdjustUrlStrategyIndia | "adjust.net.in" 。 "adjust.com" | true | false |
例
サードパーティーとの共有に関する変更
このセクションでは、SDKバージョン5でのサードパーティ共有機能の変更について説明します。
AdjustThirdPartySharing クラスの変更点
SDK v5では以下のプラグインが削除されました:
addGranularOption
->AddGranularOption
addPartnerSharingSetting
->AddPartnerSharingSetting
変更内容の例は以下のとおりです:
サードパーティとの共有をグローバルに無効化する
SDK v4では、Adjust.disableThirdPartySharing()
メソッドを呼び出すことで、サードパーティとの情報共有をグローバルに無効化することができます。
この機能はSDK v5では削除されました。SDK v5では、Adjust.trackThirdPartySharing()
メソッドを使用してサードパーティとのデータ共有を有効化または無効化できます。
広告収益
このセクションでは、SDK v5でのディープリンクに関する変更点を説明します。
特定のソースの広告収益を送信する
SDK v4では、広告収益ソースはAdjustConfig
クラスの定数として定義されています。SDK v5では、広告収益ソースは文字列としてパスされる必要があります。
v4 | v5 |
---|---|
AdjustConfig.AdjustAdRevenueSourceAppLovinMAX | "applovin_max_sdk" |
AdjustConfig.AdjustAdRevenueSourceAdMob | "admob_sdk" |
AdjustConfig.AdjustAdRevenueSourceIronSource | "ironsource_sdk" |
AdjustConfig.AdjustAdRevenueSourceAdMost | "admost_sdk" |
AdjustConfig.AdjustAdRevenueSourceUnity | "unity_sdk" |
AdjustConfig.AdjustAdRevenueSourceHeliumChartboost | "helium_chartboost_sdk" |
AdjustConfig.AdjustAdRevenueSourceADX | "adx_sdk" |
AdjustConfig.AdjustAdRevenueSourcePublisher | "publisher_sdk" |
AdjustConfig.AdjustAdRevenueSourceTradplus | "tradplus_sdk" |
AdjustConfig.AdjustAdRevenueSourceTopOn | "topon_sdk" |
AdjustConfig.AdjustAdRevenueSourceMopub | サポート終了 |
AdjustAdRevenueクラスの変更
以下のクラスプロパティは、SDK v5で直接設定する必要があります:
AdImpressionsCount
AdRevenueNetwork
AdRevenueUnit
AdRevenuePlacement
以下のセッターの名前が変更されました:
setRevenue
->SetRevenue
addCallbackParameter
->AddCallbackParameter
addCallbackParameter
->AddPartnerParameter
変更内容の例は以下のとおりです:
SKAdNetworkとATT
このセクションでは、SDK v5におけるSKAdNetworkとApp Tracking Transparency(ATT)機能の変更点について説明します。
ATTポップアップの待機インターバルを設定
SDK v4では、AdjustConfig
インスタンスのsetAttConsentWaitingInterval
メソッドを使用して、Adjustへのインストール情報の送信を遅らせる間隔を設定することができます。この延滞により、ユーザーはATTポップアップ画面と接触する時間が得られます。
SDK v5では、 AdjustConfig
インスタンスのAttConsentWaitingInterval
プロパティにディレイインターバルを割り当てる必要があります。
SKAdNetworkの通信を無効化する
SDK v4では、AdjustConfig.deactivateSKAdNetworkHandling()
メソッドを呼び出すことで、SDKがSKAdNetworkと通信しないようにすることができます。
SDK v5では、SKAdNetworkの通信を無効化するには、 AdjustConfig
インスタンスのIsSkanAttributionEnabled
プロパティをfalse
に設定する必要があります。
承認ステータスの変更を確認
SDK v4では、Adjust.checkForNewAttStatus()
メソッドを使ってSDKにユーザーのATTステータスを読み込ませ、Adjustのサーバーに情報を転送することができます。
このメソッドはSDK v5では廃止されています。
Conversion valueのアップデートを受信する
SDK v4では、 AdjustConfig.setConversionValueUpdatedDelegate()
にデリゲート関数を割り当てて、conversion valueの更新を受信することができます。
SDK v5では、 AdjustConfig
インスタンスのSkanUpdatedDelegate
プロパティにデリゲート関数を割り当てる必要があります。
Conversion valueを更新する
SDK v4では、Adjust.updateConversionValue()
メソッドを使ってAdjustに更新されたconversion valueを送信することができます。このメソッドはAppleが廃止したupdateConversionValue
メソッドをラップするため、SDK v5では削除されています。
SDK v5でconversion valueを更新するには、以下の引数でAdjust.UpdateSkanConversionValue()
メソッドを使用します:
conversionValue
(int
):更新されたconversion valuecoarseValue
(string
):更新された粗いconversion valuelockWindow
(bool
):コンバージョン期間が終了する前にポストバックを送信するかどうかcallback
Action<string>
発生したエラーを処理できるコールバック関数
App Tracking Transparency認証ラッパー
SDK v4では、Adjust requestTrackingAuthorizationWithCompletionHandler()
メソッドを使用してユーザーのATT認証ステータスの変更を処理できます。
より明確にするため、SDK v5ではAdjust.RequestAppTrackingAuthorization()
に改名されました。
デバイス情報を取得
SDK v4では、全てのデバイス情報ゲッターメソッドは同期的に実行されます。SDK v5では、これらのメソッドは非同期に実行されるように変更されまています。非同期処理の完了時に情報を処理するコールバック関数を追加することができます。