アプリケーションに該当するケース
ケース 1: MoEngage SDK がトークンを登録する場合
このケースは破壊的変更です。3 つの手順をすべて順番に完了してください。ステップ 1: Firebase Messaging ライブラリの更新
com.google.firebase:firebase-messaging を 25.1.2 以上に更新します。このバージョンについては、Firebase Android リリースノートを参照してください。
ステップ 2: Firebase Installation ID の有効化
アプリケーションのマニフェストファイルに以下のメタデータを追加します。ステップ 3: MoEngage SDK のアップグレード
MoEngage Android BOM 4.4.0 以上にアップグレードします。このリリースに含まれるモジュールのバージョンについては、Android SDK リリースノートを参照してください。影響
この移行は必須です。移行が不完全な場合、リーチャビリティに影響し、プッシュトークンの喪失が発生するため、3 つの手順をすべて正しく完了してください。ケース 2: アプリケーションがトークンを登録する場合
まず ケース 1 のステップ 1、ステップ 2、ステップ 3 を完了してから、以下の API の変更を適用してください。代替 API は MoEngage Android BOM 4.4.0 以降でのみ利用可能なため、アップグレード前にこれらの変更を適用するとコンパイルエラーが発生します。 以下の表は、代替 API をまとめたものです。最初の 2 つは、このケースのすべての統合に適用されます。残りは、アプリケーションが現在記載の API を呼び出している場合にのみ適用されます。以下の手順のコードブロックには代替 API のみを示しているため、コピーしたコードをそのまま使用できます。ステップ 4: onNewToken から onRegistered への移行
FirebaseMessagingService を継承したメッセージングサービスクラスで、onNewToken コールバックを onRegistered に置き換えます。このコールバックは、プッシュトークンの代わりに Installation ID を受け取ります。
以下のコードブロックが代替コードです。そのままコピーしてください。
ステップ 5: passPushToken から passInstallationId への移行
passPushToken の代わりに passInstallationId() を呼び出して、Installation ID を MoEngage SDK に渡します。この呼び出しは MoEFireBaseHelper で行います。
以下のコードブロックが代替コードです。そのままコピーしてください。
ステップ 6: registerForToken から registerForInstallationId への移行
この手順は、アプリケーションがregisterForToken を呼び出している場合にのみ適用してください。registerForToken の代わりに registerForInstallationId() を呼び出します。この呼び出しは MoEFireBaseHelper で行います。
この呼び出しは、以下の場合にのみ必要です。
- アプリケーションで Firebase の自動初期化が無効になっている場合。自動初期化の防止に関する Firebase のドキュメントを参照してください。
- MoEngage SDK の初期化が遅延している場合。たとえば、アプリケーションが Application クラスの
onCreate()メソッドではなくワーカースレッドで SDK を初期化している場合などです。
以下のコードブロックが代替コードです。そのままコピーしてください。
ステップ 7: getPushToken から getInstallationId への移行
この手順は、アプリケーションがgetPushToken を呼び出している場合にのみ適用してください。SDK が保持している識別子を読み取るには、getPushToken の代わりに getInstallationId() を呼び出します。この呼び出しは MoEFireBaseHelper で行います。
以下のコードブロックが代替コードです。そのままコピーしてください。
ステップ 8: トークンリスナーコールバックの移行
この手順は、アプリケーションがトークンリスナーを登録している場合にのみ適用してください。addTokenListener と removeTokenListener の代わりに addInstallationIdListener() と removeInstallationIdListener() を呼び出し、TokenAvailableListener を InstallationIdAvailableListener に置き換えます。このリスナーは、トークンの代わりに Installation ID の結果を受け取ります。これらの呼び出しは MoEFireBaseHelper で行います。
以下のコードブロックが代替コードです。そのままコピーしてください。