web-dev-qa-db-ja.com

firebaseはapns-Push-typeヘッダーを自動的に設定しますか?

APNSの iOS 13での変更 によると、サイレントプッシュ通知には追加のヘッダーが必要です(apns-Push-type)。

私はFirebaseをバックエンドとモバイルの間のメディエーターとして使用しています。Firebaseがcontent-availableプロパティがtrueに設定されています。

ここ で述べたように、それはすでにAWSで起こっています。

このヘッダーがサイレントプッシュ通知に渡されたかどうかをiOSで何らかの方法で確認できますか?

私は自分のデバイスでテストしましたが、Firebaseの依存関係を最新バージョンに更新した後は、バックグラウンドでもすべてが機能します。しかし、それでも私はヘッダーがどのように見えるかの証拠はありません。

12
Nominalista

これは、バックグラウンド通知をiOSデバイスに送信するために使用しているものです。 「content-available」ではなく「contentAvailable」を設定していることに注意してください。すべてが文字列である必要があります。

"apns": {
    "headers": {
      "apns-Push-type": "background",
      "apns-priority": "5"
    },
    "payload": {
      "aps":{
        "contentAvailable": true
      }
    }
  }

sendMulticast()メソッドを使用しています。完全な例は次のようになります。

var message = {
  "tokens": tokensArray,
  "data": {
    "info":"someInfo"
  },
  "apns": {
    "headers": {
      "apns-Push-type": "background",
      "apns-priority": "5"
    },
    "payload": {
      "aps":{
        "contentAvailable": true
      }
    }
  }
};

await messaging.sendMulticast(message)
0
Jorge Balleza