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
  1. MORichNotification フレームワークを Notification Content Extension ターゲットに統合します。
    • podfile で Notification Content Extension を別のターゲットとして追加し、MORichNotification フレームワークをインストールします。
      Swift
  2. NotificationViewController.swift ファイルのコード変更。
    Swift
  3. Content Extension で MainInterface.storyboard を選択し、デフォルトのラベルを削除して、View の背景色を透明(clear)に設定します。 main.png
  4. Info.plist の変更:
    Swift
    NSExtension.png
  5. メインアプリターゲットの Build Phases を確認します。
    • Embed App Extensions/Embed Foundation Extensions で、Copy only when installing が選択されていないことを確認します。 copy only.png
  6. 構成間で appGroupId を統一します。
    • プロジェクト内のすべてのスキームと構成(例:Debug/Release/QA/UAT)で appGroupId が一致していることを確認します。
  7. ビルド構成を揃えます。
    • プロジェクトを実行またはアーカイブする際は、メインターゲット、Notification Service Extension、Notification Content Extension ターゲットの Build Configuration が同じスキーム/構成を指していることを確認します。 debug.png
    target.png duplicate.png