MoEngage SDK の初期化
まず、App Target の Build Settings に移動し、下の画像のように Debug セクションに DEBUG プリプロセッサマクロが定義されていることを確認します。存在しない場合は、Debug セクションに DEBUG=1 と入力して追加します。

App Target の Build Settings で Other Swift Flags の Debug セクションに -DDEBUG が追加されていることを確認します。

- MoEngage アカウントで、ダッシュボードの左パネルにある Settings に移動します。General Settings の下に Workspace ID があります。MoEngageSDKConfig インスタンスで SDK を初期化する際に、この Workspace ID をデータセンターとともに指定します。以下のように initializeDefaultTestInstance(_:) と initializeDefaultLiveInstance(_:) メソッドを使用します。
- iOS SDK 11.0.0 での破壊的変更: SDK は、Debug、Release、TestFlight のすべてのビルド構成において、パブリック API を使用する前に初期化を行うことを強制するようになりました。SDK を初期化する前にパブリック API を呼び出すと、暗黙的に失敗するのではなく
fatalErrorが発生します。他のすべての MoEngage API 呼び出しの前に、initializeDefaultTestInstance(_:)またはinitializeDefaultLiveInstance(_:)を呼び出してください。 - iOS SDK 11.0.0 以降、
initializeDefaultLiveInstance(_:)はVoidではなく型付きのタスクオブジェクトを返します。上記のような直接呼び出しは変更なしでコンパイルされます。.onSuccess { ... }/.onFailure { ... }をチェーンするか、非同期のresult()メソッドを呼び出すことで、呼び出しごとの成功または失敗を確認できます。
- MoEngage アカウントで portfolio が複数のプロジェクトで構成されている場合は、MoEngageSDKConfig インスタンスで SDK を初期化する際に、該当する Project ID をデータセンターとともに指定します。以下のように initializeDefaultTestInstance(_:) と initializeDefaultLiveInstance(_:) メソッドを使用します。
projectConfigなしのポートフォリオ属性。 SDK の初期化時に空でないprojectIdを渡さずにポートフォリオ属性を設定すると、SDK は例外をスローし、DEBUGモードではアプリケーションがクラッシュします。ポートフォリオ属性を使用する場合は、projectConfigを指定する必要があります。
設定可能な構成の詳細な一覧については、API リファレンスを参照してください。
注意data_center_06 は MoEngage-iOS-SDK バージョン 9.17.3 以降で利用できます
テスト/ライブ環境
上記の初期化で説明したように、MoEngage SDK はDEBUG プリプロセッサマクロを使用して、ビルドが TEST 環境と LIVE 環境のどちらを対象としているかを判断します。そのため、ビルドを生成する際にはこの点に注意し、アプリのターゲットの Build Configuration が以下のように設定されていることを確認してください。
- 開発ビルドの場合: Build Configuration を Debug に設定する必要があります(データは TEST 環境でトラッキングされます)
- AdHoc ビルド/App Store ビルドの場合: Build Configuration を Release に設定する必要があります(データは LIVE 環境でトラッキングされます)
Build Configuration の設定方法
Xcode からアプリを実行する場合の Build Configuration:
アーカイブせずに Xcode から直接アプリを実行する場合は、Edit Scheme で App Target の Run モードのビルド構成が Debug(デフォルト設定)に設定されていることを確認してください。これにより、データが TEST 環境でトラッキングされるようになります。
ビルドをエクスポートする場合の Build Configuration:
ビルドをエクスポートする際は、正しいBuild Configuration を設定してください。デフォルトでは、Edit Scheme の Archive セクションの Build Configuration は Release に設定されていますが、開発ビルドの場合はエクスポート前に必ず Debug に変更してください。Xcode プロジェクトでビルドの Build Configuration を設定するには、App Target > Edit Scheme > Archive > Build Configuration に移動し、構成を Debug/Release(ビルドの種類に応じて)に設定します。以下の画像を参照してください。
