プッシュ通知
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfras...
-[[戻る>スマホ]]
--[[mBaaS]]
--[[通知プロバイダ]]
*目次 [#t16fc509]
#contents
*概要 [#qefff091]
SaaS開発で調べた[[プッシュ通知]]についてのメモ。
-プッシュは、~
特定のアカウントに対して行われるが、~
インフラストラクチャとしては、
--Apple(or Google)の通知用サーバに、
---[[APNs>#y98bdd9c]]~
Appleの通知用サーバ(iOSに通知を行う)
---[[FCM>#v11f894e]]~
Googleの通知用サーバ(Androidに通知を行う)
--スマホネイティブ・アプリケーションを登録する
>形になる。
-[[プッシュ通知]]までの流れ。
--スマホネイティブ・アプリケーションの登録後に、
--アプリケーションを実機にインストールすると、~
端末+アプリを識別する[[デバイス・トークン>#x56efdf7]]が...
--それを使用してサーバから通知を行う。
---AuthZ(AuthN) Server
---Resource Server
-なお、[[個人に送信>#ud033645]]するだけではなく、
--[[トピック購読者に送信>#t54fd02f]]
--[[特定グループに送信>#y2e7d9cd]]
--[[全体に送信>#m47e6433]]
>も[[デバイス・トークン>#x56efdf7]]を使用して行う。
*仕組み [#fdfd3258]
-AndroidとiOSでは、プッシュ通知に、前述の異なるが類似の仕...
-なお、プッシュ通知の動作確認をする為にエミュレータは使用...
-[[mBaaS>#yfb3e1b6]]では、AndroidとiOSの差異をラップして...
AndroidからもiOSからも利用できるプラグインを用意している...
**個人に送信 [#ud033645]
***初期化 [#y6697819]
+...。
+バックエンドサーバに[[FCM>#v11f894e]] / [[APNs>#y98bdd9c...
サービスアカウント情報(JSONファイル)を配置する。
+...。
***デバイス・トークンの保存 [#x56efdf7]
+デバイスにアプリケーションをインストールする際、~
[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca8272...
+登録結果としてデバイス・トークンを受け取る。
+デバイス・トークンをバックエンドサーバに送って保存する。~
※ 1, 2 の処理は、プラグインに~
「デバイス・トークンを バックエンドサーバに送るデリゲー...
を渡せば短いコードで完了してしまう。
※ 登録の際、ユーザIDと紐付けて保存するため認証が必要。~
ネイティブ・アプリの認証であれば[[PKCE>https://techinfo...
***通知の送信 [#k4c1bdc9]
+任意の箇所でアプリケーションのイベントを検出する。
+バックエンドサーバは、~
「サービスアカウント情報」と「デバイス・トークン」を使用...
[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca8272...
+[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca827...
**トピック購読者に送信 [#t54fd02f]
トピック購読は、ユーザ自身が行う
(Nativeからに[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[...
***初期化 [#j21103f0]
-デバイス・トークンを使用して、自端末のトピック登録依頼を...
--[[個人に送信>#ud033645]]と異なり、送信時のデバイス・ト...
--トピック登録時、[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] ...
***通知の送信 [#ya5c8950]
[[個人に送信>#ud033645]]と異なる点は、~
[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca8272...
「サービスアカウント情報」と「トピック名」を使用する点。
**特定グループに送信 [#y2e7d9cd]
グループ作成とユーザ登録は、バックエンドの管理者やアプリ...
***初期化 [#z45be148]
[[個人に送信>#ud033645]]と異なる点は、
>グループを作成依頼を[[FCM>#v11f894e]] / [[APNs>#y98bdd9c...
「通知キー」を受け取る点。
***通知の送信 [#rf7ababe]
[[個人に送信>#ud033645]]と異なる点は、~
[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca8272...
「サービスアカウント情報」と「通知キー」を使用する点。
**全体に送信 [#m47e6433]
-Firebaseコンソールなどポータルから送信可能。
-バックエンドサーバ経由で行う場合、~
事前に「全体に送信」[[トピック>#t54fd02f]]を登録しておく。
*参考 [#u5aead84]
-Kii Cloud のプッシュ通知の概要~
https://docs.kii.com/ja/guides/cloudsdk/rest/managing-pus...
--Kii Cloud でのプッシュ通知機能~
https://docs.kii.com/ja/guides/cloudsdk/rest/managing-pus...
--プッシュ通知の仕組み~
https://docs.kii.com/ja/guides/cloudsdk/rest/managing-pus...
--プラットフォーム間でのプッシュ通知~
https://docs.kii.com/ja/guides/cloudsdk/rest/managing-pus...
**プッシュ通知サーバ [#s5c3d72c]
***[[Android (FCM)]] [#v11f894e]
***[[iOS (APNs)]] [#y98bdd9c]
***JPush [#eca82729]
-JPushで中国国内のAndroid端末にプッシュ通知するための初期...
https://qiita.com/grachro/items/77036fc7b1672a4f77d2
**[[mBaaS]]利用時 [#yfb3e1b6]
***ニフクラ mobile backend [#w63fbaa6]
-iOS
--プッシュ通知 (iOS) : 基本的な使い方~
https://mbaas.nifcloud.com/doc/current/push/basic_usage_i...
--チュートリアル (iOS) : 位置情報に連動したプッシュ通知を...
https://mbaas.nifcloud.com/doc/current/tutorial/geolocati...
-Android
--プッシュ通知 (Android) : 基本的な使い方~
http://mb.cloud.nifty.com/doc/current/push/basic_usage_an...
--チュートリアル (Android) : 位置情報に連動したプッシュ通...
https://mbaas.nifcloud.com/doc/current/tutorial/geolocati...
***Firebase [#r02a15e7]
最もポピュラーなmBaaS
-Firebase Cloud Messaging~
https://firebase.google.com/docs/cloud-messaging/?hl=ja
-Firebase Cloud Messaging | プラットフォーム間で通知を無...
https://firebase.google.com/products/cloud-messaging/?hl=ja
-第9回 Firebase Cloud MessagingとFirebase Notifications...
スマホアプリ開発を加速する,Firebaseを使ってみよう|gihyo...
https://gihyo.jp/dev/serial/01/firebase/0009
-Firebaseを使うと簡単にユーザ属性毎のプッシュ通知が送れて~
既読管理やコンバージョンも簡単に把握することが出来るよ!~
しかも無料で!すごく魅力的だけどめっちゃハマった話~
https://qiita.com/chanibarin/items/48d5f5946b1e6c97e379
終了行:
「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfras...
-[[戻る>スマホ]]
--[[mBaaS]]
--[[通知プロバイダ]]
*目次 [#t16fc509]
#contents
*概要 [#qefff091]
SaaS開発で調べた[[プッシュ通知]]についてのメモ。
-プッシュは、~
特定のアカウントに対して行われるが、~
インフラストラクチャとしては、
--Apple(or Google)の通知用サーバに、
---[[APNs>#y98bdd9c]]~
Appleの通知用サーバ(iOSに通知を行う)
---[[FCM>#v11f894e]]~
Googleの通知用サーバ(Androidに通知を行う)
--スマホネイティブ・アプリケーションを登録する
>形になる。
-[[プッシュ通知]]までの流れ。
--スマホネイティブ・アプリケーションの登録後に、
--アプリケーションを実機にインストールすると、~
端末+アプリを識別する[[デバイス・トークン>#x56efdf7]]が...
--それを使用してサーバから通知を行う。
---AuthZ(AuthN) Server
---Resource Server
-なお、[[個人に送信>#ud033645]]するだけではなく、
--[[トピック購読者に送信>#t54fd02f]]
--[[特定グループに送信>#y2e7d9cd]]
--[[全体に送信>#m47e6433]]
>も[[デバイス・トークン>#x56efdf7]]を使用して行う。
*仕組み [#fdfd3258]
-AndroidとiOSでは、プッシュ通知に、前述の異なるが類似の仕...
-なお、プッシュ通知の動作確認をする為にエミュレータは使用...
-[[mBaaS>#yfb3e1b6]]では、AndroidとiOSの差異をラップして...
AndroidからもiOSからも利用できるプラグインを用意している...
**個人に送信 [#ud033645]
***初期化 [#y6697819]
+...。
+バックエンドサーバに[[FCM>#v11f894e]] / [[APNs>#y98bdd9c...
サービスアカウント情報(JSONファイル)を配置する。
+...。
***デバイス・トークンの保存 [#x56efdf7]
+デバイスにアプリケーションをインストールする際、~
[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca8272...
+登録結果としてデバイス・トークンを受け取る。
+デバイス・トークンをバックエンドサーバに送って保存する。~
※ 1, 2 の処理は、プラグインに~
「デバイス・トークンを バックエンドサーバに送るデリゲー...
を渡せば短いコードで完了してしまう。
※ 登録の際、ユーザIDと紐付けて保存するため認証が必要。~
ネイティブ・アプリの認証であれば[[PKCE>https://techinfo...
***通知の送信 [#k4c1bdc9]
+任意の箇所でアプリケーションのイベントを検出する。
+バックエンドサーバは、~
「サービスアカウント情報」と「デバイス・トークン」を使用...
[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca8272...
+[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca827...
**トピック購読者に送信 [#t54fd02f]
トピック購読は、ユーザ自身が行う
(Nativeからに[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[...
***初期化 [#j21103f0]
-デバイス・トークンを使用して、自端末のトピック登録依頼を...
--[[個人に送信>#ud033645]]と異なり、送信時のデバイス・ト...
--トピック登録時、[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] ...
***通知の送信 [#ya5c8950]
[[個人に送信>#ud033645]]と異なる点は、~
[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca8272...
「サービスアカウント情報」と「トピック名」を使用する点。
**特定グループに送信 [#y2e7d9cd]
グループ作成とユーザ登録は、バックエンドの管理者やアプリ...
***初期化 [#z45be148]
[[個人に送信>#ud033645]]と異なる点は、
>グループを作成依頼を[[FCM>#v11f894e]] / [[APNs>#y98bdd9c...
「通知キー」を受け取る点。
***通知の送信 [#rf7ababe]
[[個人に送信>#ud033645]]と異なる点は、~
[[FCM>#v11f894e]] / [[APNs>#y98bdd9c]] / [[JPush>#eca8272...
「サービスアカウント情報」と「通知キー」を使用する点。
**全体に送信 [#m47e6433]
-Firebaseコンソールなどポータルから送信可能。
-バックエンドサーバ経由で行う場合、~
事前に「全体に送信」[[トピック>#t54fd02f]]を登録しておく。
*参考 [#u5aead84]
-Kii Cloud のプッシュ通知の概要~
https://docs.kii.com/ja/guides/cloudsdk/rest/managing-pus...
--Kii Cloud でのプッシュ通知機能~
https://docs.kii.com/ja/guides/cloudsdk/rest/managing-pus...
--プッシュ通知の仕組み~
https://docs.kii.com/ja/guides/cloudsdk/rest/managing-pus...
--プラットフォーム間でのプッシュ通知~
https://docs.kii.com/ja/guides/cloudsdk/rest/managing-pus...
**プッシュ通知サーバ [#s5c3d72c]
***[[Android (FCM)]] [#v11f894e]
***[[iOS (APNs)]] [#y98bdd9c]
***JPush [#eca82729]
-JPushで中国国内のAndroid端末にプッシュ通知するための初期...
https://qiita.com/grachro/items/77036fc7b1672a4f77d2
**[[mBaaS]]利用時 [#yfb3e1b6]
***ニフクラ mobile backend [#w63fbaa6]
-iOS
--プッシュ通知 (iOS) : 基本的な使い方~
https://mbaas.nifcloud.com/doc/current/push/basic_usage_i...
--チュートリアル (iOS) : 位置情報に連動したプッシュ通知を...
https://mbaas.nifcloud.com/doc/current/tutorial/geolocati...
-Android
--プッシュ通知 (Android) : 基本的な使い方~
http://mb.cloud.nifty.com/doc/current/push/basic_usage_an...
--チュートリアル (Android) : 位置情報に連動したプッシュ通...
https://mbaas.nifcloud.com/doc/current/tutorial/geolocati...
***Firebase [#r02a15e7]
最もポピュラーなmBaaS
-Firebase Cloud Messaging~
https://firebase.google.com/docs/cloud-messaging/?hl=ja
-Firebase Cloud Messaging | プラットフォーム間で通知を無...
https://firebase.google.com/products/cloud-messaging/?hl=ja
-第9回 Firebase Cloud MessagingとFirebase Notifications...
スマホアプリ開発を加速する,Firebaseを使ってみよう|gihyo...
https://gihyo.jp/dev/serial/01/firebase/0009
-Firebaseを使うと簡単にユーザ属性毎のプッシュ通知が送れて~
既読管理やコンバージョンも簡単に把握することが出来るよ!~
しかも無料で!すごく魅力的だけどめっちゃハマった話~
https://qiita.com/chanibarin/items/48d5f5946b1e6c97e379
ページ名: