Google I/O 2017 に参加してきた

はじめに

こんにちは!エンジニアの二川(@futabooo)です。
Google I/O 2017に参加してきたので、私から見たGoogle I/Oについての感想と参加にともなって会社やチームからどんなサポートがあったのかについて書いていきたいと思います。
 
各セッションの内容は既にYoutubeにアップされていますので、ぜひそちらをご覧ください。

Google I/O 2017 – All Sessions | Youtube

 

カンファレンスアプリがすごい!

昨年もありましたがGoogle I/Oにはカンファレンスのタイムスケジュールや、カンファレンス参加者に嬉しい情報がすぐに見れるようにアプリが提供されています。
 
アプリは昨年のI/Oアプリのアップデートとして提供されています。
Google I/O 2017 | GooglePlay

 
去年までのGoogle I/Oアプリはコードも公開されています。
おそらく2017年のアプリのコードも下記のリポジトリで公開されるでしょう。
(2017/05/22時点では2017のコードは未公開)
google/iosched
 

セッションの予約

アプリはGoogle I/Oが開催される週の始めに公開されました。
同時にAndroidアプリ、iOSアプリ、Webのそれぞれから自分が受けたいセッションの予約ができるようになっていました。
画像は予約が完了したセッションの画面です。

予約できなかったセッションも予約者の列が入った後に入ることができていたので、予約が絶対必要という感じでもありませんでしたが、昼間の外で待ってるのは暑くて大変なので予約したほうが良いでしょう。

また予約、もしくはお気に入りに追加したセッションの開始10分前になるとNotificationが飛んできて教えてくれるので前のセッションが終わったら日陰で休んで、Notificationが来たら移動するという感じで時間を有効に使えました。

会場のマップ

アプリ内にマップが用意されています。

使い勝手はGoogleMapと同じで、会場内の詳細な位置を知ることができるのでセッションの部屋に行くのも迷いませんでした。

Map関連のセッションでは位置情報の細かい部分までトラックできるように頑張ってるという話もあったようなので、カンファレンスアプリでも使われていたのかもしれません。

Making the World Your Own with Google Maps APIs

 

お土産がすごい!

Badge Pick-Up時にサバイバルキットというものを渡されます。
中身はこんな感じです。

 
他にもGoogle HomeとGoogle Cloud Platformの$700分のcreditをもらえました。

 
Google I/O参加チケットの値段が$1,150なのでお土産だけで結構元が取れてる感じです。

 

個人的に気になったセッション

私が聞いてきたセッションの中で一番印象的だったものについて紹介したいと思います。

Best Practices to Slim Down Your App Size

 
このセッションではapkのサイズがユーザのインストール数に影響しているというデータを前提として、apkのサイズを縮小するための方法をいくつか紹介していました。

セッションの中では実際にgooglesampleのリポジトリで公開されているアプリを使って、apkのサイズが小さくなっていく様子を紹介していました。

 
googlesamples/android-topeka
 

自分たちのアプリにもすぐにでも使える内容だったので、みなさんもぜひ試してみてください。

Use Proguard

Proguardを使うとコード上で呼び出されていないものは含めずにapkを作成することができます。

android {
    buildTypes {
        release {
            minifyEnabled true
        }
    }
}

 

Enable Resource Shrinking

Proguradを使って呼び出されていないコードを削除すると、resourceも参照されなくなるものがでてきます。

Resource Shrinkingの効果を最大限得るためには、Proguradを使っている必要があります。

android
    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true    # 追加
        }
    }
}

 

Build Multiple APKs

端末によってABI(Application Binary Interface)やDensityは異なります。

Multiple APKを有効にすることで、それぞれに最適なものだけを含んだapkを作成することが可能になります。

android {
    splits {
        density {
            enable true
        }
    }
}

 

Use Vector Drawables

Vector Drawableを使えばDensity毎にresourceを用意する必要がなくなるため、apkのサイズを抑えることができます。

ただこれは他のTipsに比べるとapkのサイズ削減に関してはそこまで寄与しないようなので、徐々に対応を進めるので問題無さそうです。

android {
    defaultConfig {
        vectorDrawables.useSupportLibrary true
    }
}

 

ほぼbuild.gradleの対応のみで最終的なapkのサイズを1/4以下にすることができていました。すごい!

 

聞いたセッション一覧

他にも聞いたセッションの一覧がこちらです。
書き出してみると結構聞いていたなーという感じです。

  • Google Keynote
  • Developer Keynote
  • What’s new in Android
  • No one likes crashing or janky apps! Engineer for high performance with tools from Android & play
  • Building high quality apps and games with Firebase
  • Android Performance: An Overview
  • Test-Driven Development on Android with the Android Testing Support Library
  • Best Practices to slim down your app size
  • What’s new in Android Support Library
  • Great Progressive Web App Experiences with Angular
  • Making data on Google Play work for your
  • How to secure and optimize your app with Google Play app signing
  • What’s new Android Design Tools – New features and tools for rapid UI development
  • 10 Google Play Console secrets to optimize Android apps for stellar user retention
  • Best practices to improve sign-in, payments, and forms in your apps
  • Transactions with the Google Assistant
  • Understanding Color
  • Android Animations Spring to Life
  • Cloud Spanner 101: Google’s mission-critical relational detabase

会社のサポート

英会話レッスン

弊社の福利厚生の一つに英会話レッスン費用負担があります。

ビジネスユースに特化したSkypeでの英会話レッスンサービスのBizmatesを期間内に特定回数以上受講することで費用を会社が負担してくれます。

Google I/Oのチケットに申込んだ後に受かる気満々でBizmatesを始めました。
2ヶ月ほどの期間だったのでペラペラに喋れるまでは程遠いですがある程度簡単な意思疎通が可能なレベルになれたことや、英語を喋ることへの恐怖感を消しされたことなどのメリットがありました。

カンファレンス参加費用負担(宿、チケット、飛行機代)

海外カンファレンス参加費用も会社が負担をしてくれます。

参加する社員としては現地から持って返ってくるものをその後の業務に活かすこと、このブログのようにアウトプットをすることが条件ではありますが、結構な費用がかかるのに太っ腹だなと感じています。

1週間の不在

Google I/Oに参加するために1週間通常業務を行うことができませんでしたが、チームのみなさんのサポートもあって気兼ねなく参加することができました。

おわりに

総括として、本当に参加してよかったと思っています!

セッション自体はすぐにyoutubeでアップされていたので現地に行かなくても見ることが可能でしたが、現地特有の空気を肌で感じることができたのはいい経験でした。
 

最後に、弊社ではKotlinを書きたいAndroidエンジニアを募集しています!
 

  • このエントリーをはてなブックマークに追加

エウレカでは、一緒に働いていただける方を絶賛募集中です。募集中の職種はこちらからご確認ください!皆様のエントリーをお待ちしております!

Recommend

サービスの成長を支える新しい概念「LTR」とその活用事例

AWSクラウド環境でよく使うAWS CLIコマンドまとめ