質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

1回答

505閲覧

iOSのプッシュ通知(サイレント?)について教えてください

yoppy0066

総合スコア293

Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2017/12/21 05:32

現在、プッシュ通知を用いて、サーバーとアプリとでデータの連携を検討しています。

具体的にはプッシュ通知のカスタムデータにアプリに持たせたいデータを格納してプッシュ通知を送信。
アプリ側で受信したタイミングでそのデータをローカルに保存。

という流れを考えているのですが、以下の場合にプッシュ通知の機能では抜けができてしまうのか、対策可能なのかというところが知りたいです。
・ユーザーが通知を開封せずにアプリを起動した場合
・ユーザーがプッシュ通知を拒否している場合

お手数ですがご確認お願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

残念ながら,お考えの目的でプッシュ通知を利用することはできません.プッシュ通知は,新着情報があることを通知するものであり,新着情報の内容を転送する目的で設計されていません.
ですので,アプリが起動されれば,プッシュ通知とは関係なしに新着情報を取得しにいけばいいですよね,という思想のようです.

端末が通知を受信した時

  • アプリがフォアグランドまたはバックグランドで処理可能な場合 → 通知を受け取って何かの処理を行うことは可能
  • アプリが閉じられている場合 → 通知センターに届くだけ

となります.

起動時に getDeliveredNotificationsWithCompletionHandler を使って,通知センターにある通知を取得することは可能ですが iOS 10 以降で追加されたものですし,利用者がアプリを起動させずに通知を消去していれば,アプリはこの方法で通知があったことを知る由もありません

そして,お察しの通り,プッシュ通知を利用者が拒否することもできます.それを許可するよう強要することはできません.ただ,その利用者は新着情報があるよという通知が受け取れないだけです.アプリを起動させれば新着情報を得ることはできるでしょう.

長くなりましたが,プッシュ通知は,アプリが立ち上がっていない時に,アプリを立ち上げるよう促す(利用者に判断させる)ためのものであり,何か情報をアプリにサーバからプッシュ通信するものではないです.あくまで,情報はプルするものになります.

投稿2017/12/22 08:50

togino77

総合スコア143

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問