生徒さんだけでなく私も勉強しています。
中学生の生徒さんと一緒にAndroidアプリ開発の勉強に着手したのですが、参考にした本が古くて、イマドキの開発環境に合わなくてハマりました。
ハマるのも勉強のうちなので、それはそれでいい経験かなと思いますが、先に進まないと飽きてしまうので、私もこのお正月を使って勉強しています。
ひとまずandroidアプリにpush通知の機能を実装したい。
そのためにイマドキはfirebaseというのを使うらしいです。
技術の進歩というか、Googleが提供する開発ツールのバージョンアップが早すぎるので、入門書が出てもすぐに古びてしまう。
数か月前にウェブ上にアップされている技術系の記事や、数号前の技術雑誌の記事ですら古くなってしまっていることがある。
やれやれ。
ちょっとハマったけど、ひとまずPush通知できるようになったみたい。
ハマりポイントは2点。
その1.
Firebaseのウェブサイトからこつこつ進んでgoogle-services.jsonをダウンロードして・・・ってやるのではなくて、AndroidStudioのtoolsメニューにあるFirebaseから進んで行けばいい。
この写真のところ。
自動的にgoogle-services.jsonがプロジェクトにインポートされるし、build.gradleの編集もやってくれます。
その2.
Firebase ConsoleでNotificationの新規メッセージを作成するとき
ターゲットでユーザセグメントを選択するならアプリを指定するだけでなく
ユーザー層 = All Usersの条件も加える。
アプリの指定だけして満足してたらPush通知が全然アプリに来なくてハマりました。
この写真みたいにする。
※ 1月5日追記
上記、違うみたい。
http://qiita.com/toshiyuki_wada/items/a072ec557a49c6f8c00a
このサイトにあるように
MainActivity.javaのonCreateメソッドのsetContentViewを呼び出した後に、以下のコードを追加すればいい。
FirebaseMessaging.getInstance().subscribeToTopic("test");
これはtestトピックを作っているわけだけど、トピックを作らなくてもいいのかな。
FirebaseMessaging.getInstance()さえしちゃえばいいのかも?
ひとまず動いたし、もう眠いから確かめるのはまた今度。
ユーザー層 = All Usersは関係なかったです。ごめんなさい。m(_ _)m
知らなかった技術に触れるのって楽しい~♪
この楽しさを次代を担う子どもたちに伝えていきたいです。