Skip to main content

問題

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

手順

次の手順を実行します。
  1. Notification Content Extension ターゲットを作成します。 NCE.png
    • Product Name ボックスに Extension ターゲットの名前を入力します。
    • Language リストで言語をクリックします。Swift は Objective-C プロジェクトでもシームレスに動作するため、言語として推奨されます。 name swift.png
    • Signing & Capabilities タブで、Notification Content Extension の設定に AppGroupId を追加します。 signing.png
    • Minimum Deployments で、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
  5. Info.plist の変更:
    Swift
    NSExtension.png
  6. メインアプリターゲットの Build Phases を確認します。
    • Embed App Extensions/Embed Foundation Extensions で、Copy only when installing チェックボックスをオフにします。 copy only.png
  7. 構成間で appGroupId を統一します。
    • プロジェクト内のすべてのスキームと構成(例:Debug/Release/QA/UAT)で appGroupId が一致していることを確認します。
  8. ビルド構成を揃えます。
    • プロジェクトを実行またはアーカイブする際は、メインターゲット、Notification Service Extension、Notification Content Extension ターゲットのビルド構成が同じスキームまたは構成を指していることを確認します。 debug.png
    target.png duplicate.png