blogプログラミングの話や技術系イベントの話をゆるく書くブログですこの広告は、90日以上更新していないブログに表示しています。今年はセッションが採択されたので、スピーカーとして参加しました。去年までは普通に参加者としてだったので、スピーカーとして参加するのは今年が初です。発表したぞいspeakerdeck.com「開発者が知っておきたい通知の歴史」というタイトルで、Androidの通知の機能追加の歴史と、互換性を維持してどう実装していけばいいか?というテーマで話させていただきました。内容はスライドを見ていただくとして、この発表をするに至った動機や、当日の発表、オフィスアワーで頂いた質問などを紹介しようと思います。なんで通知?自分は基本iOSよりAndroid好きマンなんですが、何が好きって特に通知が使いやすいのが好きなんですね。普段使っているアプリでも通知の実装が残念なこともあったりして、もっとAndroid開発者がかっちょいい通知を作って欲しい!という個人的な思いの元で応募したセッションでした。ちなみに、応募したけどリジェクトされたその他のセッションについてはこちらの記事に内容を書きました。kobakei.hatenadiary.jp事前準備セッションが採択されて、まずはサンプルアプリを作るところからはじめました。github.com別に自分は通知マスターでもなんでもないにも関わらず、通知の機能を網羅的に紹介するセッションが通ってしまったので、普段自分の業務では使わない機能も主要な機能では説明しなくてはと思い、ちまちま実装してました。GitHubのコミットログを見ると、最初のコミットは11/9のようです。実に3ヶ月前から始まってますね。スライドも年末からボチボチ書き始めました。一度勢いに任せてガーッと書いたあと、こまめにアップデートを重ねてました。今年は事前にスライドを公開するビッグウェーブが来てたので、3日くらい前に自分も公開しておきました。そこからソースコードや説明に細かい手直しは入れましたが、大筋は事前公開通りで発表しています。何度か通しで発表練習して、25分くらいに収まるように調整しました。後述するようにギリギリ、むしろちょいオーバーくらいでした。自分のセッションは2日目の最後だったので、それまで他のセッションを聞いても全然集中できませんでしたw自分の発表は正直反省だらけで、マイクが途中で電池切れになる動画が上手く再生できなかった(再生まで時間がかかってたせいで、発表者モードで再生できないように見えた。実際は動いてたらしい)序盤にダラダラ喋りすぎて、後半駆け足になった。結局1分ぐらい押した。いった感じであとで動画を見るのが怖いレベルです。30分の長さの発表になると途中途中で今自分の話が早いか・遅いかを確認するマイルストーンが必要だと思い、スライドのセクションごとに発表者ノートに「ここで12分」みたいなメモを足していたんですが、これは後半巻き返す際にとても役に立ちました。あと、Keynoteに動画埋め込みは大体うまく行かないのでやめましょう。次やるときは動画GIFにします。よかった点を挙げるとすれば、笑いを取るつもりで喋った小ネタは全部笑いが起きてたのが救いでした。雰囲気の良い会場でよかった。ツイートをいくつか引用。2018年2月9日そうだ、これだ。説明聞いてるだけで、今度通知を実装する辛さを想像しておえっとなる。通知の知見モリモリであった。2018年2月9日ここで引用できなかったツイートもすべて目を通しました。ツイートありがとうございます!なんか主に通知の辛さが伝わってしまった感が否めないんですが、僕は皆にいい通知を実装してほしくて講演してるので是非諦めずにがんばってください!!!オフィスアワーいくつか質問を頂いたのでブログでも紹介しておきます。通知チャンネルでユーザーが通知を拒否したことは取得できるか?できます。公式ドキュメントに以下の記述があります。IMPORTANCE_NONE.Firebaseでプッシュ通知を実装しているが、アプリの持つ通知設定でON/OFFできるか?多分カスタマイズしないと厳しいです。二行以上のテキストを表示するために、BigTextStyleを使うようにカスタマイズすると思うので、諦めて通知の表示部分は自分で実装しましょう。アプリ内通知設定とOreoの通知チャンネルの関係は?Oreoでは前者はいらない?僕は部屋の蛍光灯に例えると、以下のような関係だと思っています。ブレーカーより根っこに近いレベルのONOFFがOreoの通知チャンネルだと思うので、引き続きアプリ内で通知設定を提供していてよいと思います。通知チャンネルの粒度は、アプリ内通知設定がすでにあるなら大体合わせておけばよいと思います。今年もやってきました。採択されました表題の通りです。2017の13日目です。1参加グループプログラミングはてなブログをはじめよう!keisukekobayashiさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。