Skip to main content

問題

Notification Content Extension が実装されていない場合、プッシュテンプレート(カルーセル画像、背景色、フォントの色など)がプッシュ通知で正しく表示されません。

手順

次の手順を実行します。
  1. Notification Content Extension ターゲットを作成します。 NCE.png
    • Extension ターゲットに名前を付けます。 Extension ターゲットの名前を選択します。Swift は Objective-C プロジェクトでもシームレスに動作するため、言語として推奨されます。 name swift.png
    • Notification Content Extension の Signing & Capabilities 設定に AppGroupId を追加します。 signing.png
    • Notification Content Extension の最小デプロイ iOS バージョンをメインアプリの iOS バージョンに合わせて設定します。 deployment.png
  2. MORichNotification フレームワークを Notification Content Extension ターゲットに統合します。
    • podfile で Notification Content Extension を別のターゲットとして追加し、MORichNotification フレームワークをインストールします。
      Swift
  3. NotificationViewController.swift ファイルのコード変更。
    Swift
  4. Content Extension で MainInterface.storyboard を選択し、デフォルトのラベルを削除して、View の背景色を透明(clear)に設定します。
main.png
  1. Info.plist の変更:
    Swift
    NSExtension.png
  2. メインアプリターゲットの Build Phases を確認します。
    • Embed App Extensions/Embed Foundation Extensions で、Copy only when installing が選択されていないことを確認します。 copy only.png
  3. 構成間で appGroupId を統一します。
    • プロジェクト内のすべてのスキームと構成(例:Debug/Release/QA/UAT)で appGroupId が一致していることを確認します。
  4. ビルド構成を揃えます。
    • プロジェクトを実行またはアーカイブする際は、メインターゲット、Notification Service Extension、Notification Content Extension ターゲットの Build Configuration が同じスキーム/構成を指していることを確認します。 debug.png target.png duplicate.png