Unity iOS SDK は、以下で説明する
MoEngage-Info.plist 設定ファイルを使用したファイルベースの初期化のみをサポートしています。MoEngage の設定を含める
MoEngage パッケージをインポートした後、Assets フォルダーに MoEngage-Info.plist ファイルを追加します(Asset > Import New Asset)。
MoEngage-Info.plist で、ワークスペース ID、リージョン、その他の設定値を指定します。
XML
SHOULD_PROVIDE_DEEPLINK_CALLBACK を true に設定します。
Unity App Controller Swizzling
SDK を初期化するには、次の 2 つの方法があります。- Unity App Controller のサブクラス:
SDK には、UnityAppController のサブクラスであるMoEUnityAppControllerクラスが含まれています。ここでは、アプリの起動時にコールバックを受け取り、MoEngage SDK を初期化します。 - UnityAppController swizzling:
UnityAppController swizzling を有効にするには、MoEngage-Info.plistでUNITY_CONTROLLER_SWIZZLING_ENABLEDをtrueに設定します。ここでは、MoEngage SDK を初期化するためにapplication:didfinishLaunchinWithOptions:メソッドが swizzle されます。
ビルドと置換
必要なパッケージをインポートしたら、File > Build Settings に移動し、iOS プラットフォームに切り替えて Build をクリックします。ポップアップで Replace を選択します。初回の統合時には Replace を選択する必要があります。これは、MoEngage SDK 用に Xcode プロジェクトのビルド設定を更新し、ネイティブの依存関係もインストールするためです。

CocoaPods
先に進む前に、システムに CocoaPods がインストールされていることを確認してください。
Unity-iPhone.xcworkspace を開いてアプリを実行します。
Swift Package Manager
CocoaPods の代わりに、Swift Package Manager(SPM)を使用して MoEngage iOS の依存関係を管理することもできます。- Xcode で File → Add Package Dependencies に移動します。
- MoEngage iOS SDK のリポジトリ URL を入力し、必要なバージョンを選択します。
MoEngageSDKパッケージをUnity-iPhoneターゲットに追加します。- 生成された
Podfileを削除し、.xcworkspaceを閉じます。SPM を使用する場合は、Unity-iPhone.xcodeprojを直接開きます。