Help us understand the problem. What is going on with this article?

Firebase(FCMのtopic)をcurlで実行してもiPhoneアプリにプッシュ通知がでない時の対処方法

More than 3 years have passed since last update.

FCM Server経由でiPhoneアプリとAndroidアプリにtopicを利用したpush通知を送りたくて、curlで確認したところかなりハマってしまったのでメモとして残しておきます。

前提として、両アプリともFirebase Cloud Messaging(FCM)を組み込んでいて、Firebase ConsoleからNotificationsが送れるものとします。

Firebaseによるプッシュ通知のハマりどころ」を参考にして作ってますが、自分のところではiPhoneアプリで手こずりました。Androidアプリはさすがにすんなり動作しました。

以下が動作したパターンです。

 curl --header "Authorization: key=$api_key" \
     --header Content-Type:"application/json" \
     https://fcm.googleapis.com/fcm/send \
     -d "{\"to\": \"/topics/info\",\"priority\":\"high\",\"content_available\":true,\"notification\": {\"body\": \"お知らせ\",\"badge\": \"1\"}}"

私の間違ったポイントは以下です。
* api_keyはFirebase Settings -> CLOUD MESSAGING -> Server key を利用する。でないと認証で失敗する。
* priorityをhighにする (iPhoneで必要)
* content_availableをtrueする (最終的に必要かどうか分からない)
* notificationにbodyを指定する(これがないとiPhoneに表示されない。最後までハマった)

何かのお役に立てれば幸いです

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away