DroidKaigi行ってきた #droidkaigi

AndroidのカンファレンスのDroidKaigiに行ってきた。

自分の近況とかAndroid

業務では去年から写真動画のアルバムアプリ(iOS/Android両方リリース済み)を作っていて、サーバー側のAPIとかインフラ周りとかたまにiOSやっていたのだけど、最近はAndroidもやろうという気概が出てきたのでmixi-inc/AndroidTrainingとかに参加しながらちょいちょいとAndroid書くようになってきたレベルのAndroid技術力です。

なので、今回参加したから正直全部を理解出来たというわけではないけど、他者の現場での苦悩とかを聴いたりして現代のAndroid開発の雰囲気を感じ取ることが出来てすごい良い機会だった。

聴いたセッション

www.slideshare.net

ActivityとFragmentとCustomViewをうまく使い分けましょうという話だった。 根本的にはFatController避けましょうってことなのだけど、FragmentとかCustomViewの使い方などはAndroidらしいなーなど思って参考になった。

www.slideshare.net

Androidでテスト書くまでの話。スマホアプリのユニットテストのノウハウは意外とあんまりみんな話さない&みんなそれぞれ違うやり方してたりする気がするので参考になる。

www.slideshare.net

絶対に落ちないアプリは無い!! とのこと。AsyncTask、チーム内にちゃんとしたレビュワーいないと糞コード生み出しまくりそうで難しそう。iOSのGCD便利やなーって気持ちになった。

speakerdeck.com

大容量==数百MBぐらいの話。Service/Intent Serviceの使い方実例学べてよかった。 あとDL機能は今のアプリにも実装されているので、今後改修するときに参考になりそう。

www.slideshare.net

聴いたけど、Dalvikについて理解してないのでこのセッションの話についても正確に理解することはできてない() Dalvikに比べて速いということが分かってよかった。

speakerdeck.com

AndroidのBitmap操作ちゃんとやらないとOOMになるよねっていう入門のところからpicaso/glide/frescoを使ったfilter処理とか実践的な話まで網羅されていてすごい参考になった。 今のアプリでも画像取り扱うことが多いのでありがたい。Blur処理をAndroidで綺麗にやるためには一回画像を小さくしてBlurかけて引き伸ばすと綺麗になるみたいなノウハウ(ゲーム業界ではよくやるらしい)が披露されていた。

www.slideshare.net

ひっぱるゲームとかの消費電力が明らかにされていた。 WebViewの画面更新時にバッテリーを激しく消費するのはなるほどって感じだった。

speakerdeck.com

スマホアプリに関わるデザイナー、どんどんgit使ってXML書けるようになってほしいという願いが強まった。エンジニア側は優しく教えることも必要。

speakerdeck.com

資料作ってる間にsupport libraryがリリースされて資料作りなおしたとのことお疲れ様でした・・・。最新のsupport library使って、AppCompatXXXを使えばある程度Material Designっぽくなるとのこと。

www.slideshare.net

Material Designを先取りしてみて独自実装してGoogleの人に見せたら、おーこれMaterialDesignじゃん〜〜みたいな反応されてそのままベストアプリに選ばれたとか。Androidが進化するときはチャンス。フリルはRxJavaをPromiseのように使ってるとのことで俺らも使いたいなという気持ち出た。

www.slideshare.net

データの同期のためにEvertnoteのアルゴリズムを参考にSyncAdapterとデータ同期処理を作った話だった。データの同期をするというのの要件の中にオフライン編集が含まれていたので、そのためにクライアント側のDBにdirtyフラグを持って更新管理を行うという話だった。コンフリクト時の解決はそんなに頑張っていなくて必ずクライアント側が勝つようにしていてそんなに問題起きてないとのこと。クライアントから通信がきちんと完了できなかった時の問題(例えば追加リクエストは成功してサーバーではデータが作成されたけどクライアント側がレスポンス受け取れなかった時など)は現状ケアしきれてないけど、データ全体の更新処理でカバーしているだとか。

最後、fireside chatとして座談会をしていた。ninjinkunさんが気になっていたBaseActivity作る?作らない?の話題はみんなほとんどは作りたくないという意見が多かった。

全体の感想

DroidKaigiはエンジニアが主役のイベントですっていうことで、運営もみんな一線で活躍しているAndroidエンジニアの人たちだし、セッション内の資料にもサンプルコードのスライドたくさん出てきたり聴いたことほとんどが参考になり明日から生かせそうな内容ばかりで非常に良いイベントだった。

特に自分の場合、業務ではBitmapとかデータ同期とかMaterialDesign対応みたいなのは直近で役に立ちそうな知識だったし、Activity/Fragment/CustomViewとかAsyncTask周りの必要知識はAndroid書いてくにあたって必須っぽい感じだったので聴いた価値あった。

来年も開催して欲しいですね。