DroidKaigi 2019に参加してきました

みなさん、はじめまして。知っている方は、お久しぶりです。
普段は 、恋愛・婚活マッチングサービス「Pairs」のAndroid開発をしている@zukkey59です。

この記事は、2019年2/7(木) ~ 2/8(金)に行われたDroidKaigiの参加レポートになります。

この記事に書かれていること

・DroidKaigiとは

・気になったセッション

・当日のブースの様子

・まとめ

しばしの間お付き合いくださいませー

DroidKaigiとは

Android及び関連技術の共有とコミュニケーションを目的として、2019年2月7日(木)、8日(金)の2日間開催されました。

弊社からも、我らがボスのAndroidエンジニアの@yuyakaidoが「Redux for Android」という内容で登壇いたしました。

Redux for Android」の登壇スライドはこちらになります。

当日気になったセッション

いくつかセッションに参加してみて、当日学びの多かったセッションについて個人的な所感を書いていきます。

マルチモジュールプロジェクトでのDagger2を用いたDependency Injection - Shinnosuke Kugimiyaさん

Dependency InjectionとDagger2の説明がわかりやすく説明されており、勉強になりました。Component、Moduleのそれぞれの役割について理解がふわっとしている方にもイメージがつきやすいと思います。

また、ビルド高速化について私自身調べており、マルチモジュール化について興味を持っておりました。

マルチモジュール化の際に、DaggerでDIするときのポイントについて解説されており、次にマルチモジュール化するときにまた参考にさせていただきます。

Slice Your App: Inside Slices and How to build - Hiroyuki Moriさん

Sliceに関して、チョット興味あるという状態だったので、聞きに馳せ参じました!Sliceとは、Google検索アプリ内やGoogleアシスタントなどの他の場所から、いい感じのUIを提供してくれるテンプレートです。

本セッションでは、Sliceの実装が簡単にできることと、ContentProviderというわりと古いAPIを利用しているということなどが勉強になりました。

自分もサンプル作って挑戦してみようと思います!

Deep dive into MotionLayout - Nicolas Roardさん、Takeshi Hagikuraさん、John Hofordさん

かねてから興味があったMotionLayoutについて、Googleの人が解説をしてくれています。KeyAttributes、KeyPosition、KeyTimeCycleなど、それぞれの機能について解説しておりました。

Cycle Editorを初めてみました。これでアニメーションの状態を波形で確認するといったことが色々できるようです。

他には、YouTubeのような遷移をするために、alpha3から利用できるpercentWidthとpercenteHeightを使って実現できるということ知り、複数の状態を定義するためには非連続ではなく、連続的に状態を作っていけば実現できるということがわかりました。

また、alpha4からRecyclerViewからSharedElementを用いた遷移ができるようです。これには驚きました。

Mediumにも解説記事が載っているようなので、こちらも必見ですね。

multi-module Android アプリケーション - Jumpei Yamamotoさん

今、私が一番知りたかったマルチモジュール化!

マルチモジュール化をすることでいかにビルド高速化を実現できるか実際の計測結果を元に紹介されておりました。

効果的にビルド高速化を目指すためには、「モジュールの依存関係の構造」について考えることだと学びました。

また、DIを導入することで、循環依存を回避しビルド高速化を実現するためのモジュールの依存関係構造を作れることが、実例を元に解説されていてわかりやすかったです。

マルチモジュール化を実現するためには、Applicationモジュールに最低限残してlegacyモジュールに移していくことから始めるのがよいアプローチのようです。

実践 WorkManager - Atsushi Sakaiさん

WorkManagerを利用したい、と思いつつなかなかできていなかったので知見を得ようと思い、こちらのセッションに参加しました。

WorkManagerについては、ざっくりとスライド中の文章を借ります。

バックグラウンドジョブを実行・管理するためのAndroid Jetpackコンポーネント
アプリが終了しても確実にタスクを終えたい処理を実行させる

画像キャッシュに用いているようです。実装時のTipsや注意事項についても書かれており参考になるなぁと思いながら聞いておりました。


当日のブースの様子

前回に引き続き、今回も弊社では展示ブースを開いておりました!

会場前準備完了!!

展示ブースでは、アンケートにお答えいただいた方に、USB Type-Cの変換アダプタを配っておりました!

eurekaとPairsのロゴが入った変換アダプター

登壇した@yuyakaido氏に質問に来ていただいたり、たくさんの方にブースまで足を運んでいただきました!

質問に答えるAndroidリーダー

私の元にもありがたいことにたくさんの方がいらっしゃいました…!!

ありがとうございます!

私(左)とAPIチームリーダーtakochuuさん(右)

DroidKaigi2日間、たくさんの方とお会いできお話しできて嬉しかったです!

ブースでもこちらの記事でも、興味を持っていただけた方は次のWantedlyのリンクから、ぜひぜひエントリーご応募お待ちしております…!!

また、弊社ではmeetupイベントなども開いておりますので、次のリンクからフォローしてチェックしていただけると幸いですー


まとめ

DroidKaigiは2日間あり、1日目はブースの担当をしていたのでセッションを見ることはできませんでしたが、2日目は気になっていたセッションを一通り受けることができ学びが多かったです。

去年は登壇しようと思ってセッションを提出しましたが、通らずじまいだったのでまた挑戦してみようと思います。