「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfrastructure.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -戻る --[[Android開発]] --[[Firebase]] --[[プッシュ通知]] ---[[iOS (APNs)]] ---Android (FCM) *目次 [#afcb3480] #contents *概要 [#s207f4a9] -FCM は、 --Firebase Cloud Messaging 略称。 --Android用の[[プッシュ通知]]サーバ -Firebaseは、Googleの[[mBaaS]]でもある。 --[[Android]]では、[[Android (FCM)]]を使用するが、 --[[mBaaS]]なので、プッシュ通知の統合機能を持っている。 --このため、[[Android (FCM)]]だけでなく、[[iOS (APNs)]]と連携可能になっている。 *詳細 [#k2b4b564] -[[Firebaseにログイン>#k71a6dd8]]して、 -[[プロジェクト作成>#sa05a1ad]]を行う。 -プロジェクトに[[アプリを登録>#u8f35bcd]]する。 -アプリの登録後に発行された[[ファイルのダウンロード>#h236aa91]]。 -このファイルを[[ビルド・プロセスに組み込む>#v1a2d3ea]]。 -[[プッシュ通知]]に[[必要なコードを実装する。>#uf6bbe9e]] **Firebaseにログイン [#k71a6dd8] https://firebase.google.com/ **プロジェクトの作成 [#sa05a1ad] プロジェクト作成等の設定を行う。 **アプリの登録 [#u8f35bcd] 項目などは、Android・iOSで異なる。 **ファイルのダウンロード [#h236aa91] 登録の結果、 -生成されたファイルをダウンロードしておく。 -ファイルの内容は、Android・iOSで異なる。 --Android:google-services.json --iOS:GoogleService-Info.plist **ビルド・プロセスへ組込む。 [#v1a2d3ea] この手順は、Android・iOSで大きく異なる。 -このファイルをビルド・プロセスに組み込む。 -メイク・ファイル的なものを一部、手修正する。 ※ また、使用する開発ツールによってパス等が微妙に異なったりするので注意。 **必要なコードを実装する。 [#uf6bbe9e] プッシュ通知に必要なコードを実装する。 ***クライアント側 [#y855cd4a] Android・iOS、UIフレームワーク毎に異なる。~ ※ 使用する開発ツールによって実装方法が明確に異なるので注意。 -Android・iOSのネイティブは、ナビされるが、 -[[ハイブリッド、クロスプラットフォームなどは個別に調査が必要。>#iefd8417]] ***サーバ側 [#e29bc61e] -[[C#での例>https://techinfoofmicrosofttech.osscons.jp/index.php?.NET%E3%81%A8%E3%82%B9%E3%83%9E%E3%83%9B#u3ed110d]] -その他 --[[Node.js]] --Java **注:ハイブリッド、クロスプラットフォーム系 [#iefd8417] ***[[Cordova>Cordova (PhoneGap)#u9b1dad8]] [#ube1a40e] ***[[Flutter>Flutterのサード・ステップ#p7b4ca10]] [#vb2fe9db] *参考 [#tf730fed] **GCM廃止 [#kecdd81f] -「Googleクラウドメッセージング(GCM)」が1年後に廃止、~ 「Firebase Cloud Messaging(FCM)」への移行が必要に:~ Googleのアプリメッセージング基盤が完全に交代 - @IT~ http://www.atmarkit.co.jp/ait/articles/1804/13/news051.html **TECH Projin [#hc35c6c5] androidでプッシュ通知を実装する -[[【第1回 概要】>http://tech.pjin.jp/blog/2015/09/11/android%e3%81%a7%e3%83%97%e3%83%83%e3%82%b7%e3%83%a5%e9%80%9a%e7%9f%a5%e3%82%92%e5%ae%9f%e8%a3%85%e3%81%99%e3%82%8b%e3%80%90%e7%ac%ac%ef%bc%91%e5%9b%9e-%e6%a6%82%e8%a6%81%e3%80%91/]] -[[【第2回 事前準備】>http://tech.pjin.jp/blog/2015/09/17/android%e3%81%a7%e3%83%97%e3%83%83%e3%82%b7%e3%83%a5%e9%80%9a%e7%9f%a5%e3%82%92%e5%ae%9f%e8%a3%85%e3%81%99%e3%82%8b%e3%80%90%e7%ac%ac2%e5%9b%9e-%e4%ba%8b%e5%89%8d%e6%ba%96%e5%82%99%e3%80%91/]] -[[【第3回 アプリ側実装前編】>http://tech.pjin.jp/blog/2015/09/29/android%e3%81%a7%e3%83%97%e3%83%83%e3%82%b7%e3%83%a5%e9%80%9a%e7%9f%a5%e3%82%92%e5%ae%9f%e8%a3%85%e3%81%99%e3%82%8b%e3%80%90%e7%ac%ac3%e5%9b%9e-%e3%82%a2%e3%83%97%e3%83%aa%e5%81%b4%e5%ae%9f%e8%a3%85/]] -[[【第4回 アプリ側実装中編】>http://tech.pjin.jp/blog/2015/10/05/android%e3%81%a7%e3%83%97%e3%83%83%e3%82%b7%e3%83%a5%e9%80%9a%e7%9f%a5%e3%82%92%e5%ae%9f%e8%a3%85%e3%81%99%e3%82%8b%e3%80%90%e7%ac%ac4%e5%9b%9e-%e3%82%a2%e3%83%97%e3%83%aa%e5%81%b4%e5%ae%9f%e8%a3%85/]] -[[【第5回 アプリ側実装後編】>http://tech.pjin.jp/blog/2015/10/16/android%e3%81%a7%e3%83%97%e3%83%83%e3%82%b7%e3%83%a5%e9%80%9a%e7%9f%a5%e3%82%92%e5%ae%9f%e8%a3%85%e3%81%99%e3%82%8b%e3%80%90%e7%ac%ac5%e5%9b%9e-%e3%82%a2%e3%83%97%e3%83%aa%e5%81%b4%e5%ae%9f%e8%a3%85/]] -[[【第6回 Appサーバ側実装編】>http://tech.pjin.jp/blog/2015/10/20/android%e3%81%a7%e3%83%97%e3%83%83%e3%82%b7%e3%83%a5%e9%80%9a%e7%9f%a5%e3%82%92%e5%ae%9f%e8%a3%85%e3%81%99%e3%82%8b%e3%80%90%e7%ac%ac6%e5%9b%9e-app%e3%82%b5%e3%83%bc%e3%83%90%e5%81%b4%e5%ae%9f/]] **Qiita [#t960d4f7] -AndroidのPush通知を試してみよう [サーバー知識不要~ https://qiita.com/flatfisher/items/bdec83caf3c7f9c8917c **[[サーバが.NETの場合>https://techinfoofmicrosofttech.osscons.jp/index.php?.NET%E3%81%A8%E3%82%B9%E3%83%9E%E3%83%9B]] [#t121eee7]