- Google I/O 2019 Recap at LINEに参加してきました。
タイトル | 発表者 |
---|---|
Google I/O 2019 Overview | 藤原 聖 |
Androidの何か① | Hidetsugu Tamaki |
Androidの何か② | 高島 友里 |
会場の雰囲気 | 櫛井 優介 |
Webの何か① | 清水 大輔 |
Webの何か② | YiXin Xu |
Securityの何か | コキチーズ |
Flutterの何か | Megumi Hattori |
Speechless Live / Fireside Chat with Hiroshi Lockheimer | Ken Wakasa |
Google I/O 2019 Overview
- 藤原 聖さん
Google I/O 2019
- 2008年からで12回目
- 2016: google assistant/google home
- 2017: mobile/AI
- 2018: AI
- 2019: Building more helpful for Google everyone
Keynote
- googleで検索した結果をARで見られる
- google lensで読み上げ
- AI for everyone
- プライバシーの強化
- on device
- Live Caption
- Android Q
- Security/Privacyの強化
- Devices
- Nest Hub
- Pixel 3a
レポート
Androidの何か①
- Hidetsugu Tamakiさん
Kotlin
Android Q
Dark Theme
- なぜ重要?
- 環境:暗くても見やすい
- バッテリー:最大60%消費削減
- アクセシビリティ:目にやさしい
- Force Dark
- Androidが自動でDarkに色を計算してくれる
- 細かいところまでちゃんとやりたいならCustomで
- Custom
-night
をつけて対応する- 画像もDark用を用意するとよい
Gesture Navigation
- デバイスのメーカーによって挙動が違ったのを統一
- 変更点
JetpackCompose
- Frameworkの同梱されないUIきっと
- バージョン関係なしに更新できる
- 宣言的なUI作成キット
- Reactive Programming + Kotlin
- 既存コードと互換性あり
- まだExperimental
Androidの何か②
- 高島 友里さん
Android Studio
- Project Marble
- System Health
- ビルド速度向上
- エミュレータのCPU使用率減
- Feature Polish
- Apply Changes
- Layout Inspector
Webの何か①
- 清水 大輔さん
Google Assistant
Google Search
Chrome
- Perception Toolkit
Webの何か②
- YiXin Xuさん
Site Performance
- Twitterがどう考えるか
- responsive
- mobile first
- one codebase
- TwitterLiteで30%高速化
- パフォーマンス改善の工夫
- code ssplitting
- component based design
- lazy load
- < 3MB
Lighthouseの 新機能
- Lightwallet
- PerfBadgetを設定して測定できる
- LighthouseCI
- Coming Soon
Securityの何か
- コキチーズさん
Incognito mode
- シークレットモードがyoutubeやmapでも
Android
- Qからハードウェアアクセラレーションがなくても暗号化される
- TLS1.3デフォルトでon
- 弱い暗号鍵はGoogleが強くして署名してくれる
- scoped storage
- /sdcardへのアクセス制限
- 他のアプリが作ったファイルへのアクセス制限
- 位置情報
- バックグラウンドで位置情報をとるのは別で権限必要に
Web
- Googleに報告される脆弱性の半分はWeb
- Content Security Policy(CSP)
- 読み込み可能なリソースをホワイトリストで設定
- nonceをつける
- ランダムな値
- strict-dynamic
- nonceで許可されたscriptを動的に読み込むことを許可
- Trusted Type
- fetch metadata
- リソース取得時にmetadataを付与する
- Cross-Origin-Opener-Policy
- window.openの挙動を制限
Flutterの何か
- Megumi Hattoriさん
Flutter
- 単一のコードからマルチプラットフォームなアプリを作れる
- Flutter for Webが発表された
Flutter App
- Google I/Oに合わせて公開されたアプリ
- Flutter Developer Quest
- KENKEN
Flutter for Web
- DartはもともとWebでJSの代わりに使おうとしてたもの
- Flutterエンジンをブラウザように切り替えてWebで動かす
Multiplatform
- デバイスサイズにスクリーンとの距離が違う
- そういった設計の工夫についてのセッション
- iOSとAndroid
- 細かい挙動の差異はFlutterが吸収してくれる
- UIのパーツが異なるものは実装で使い分ける
- パーツは用意されている
Dart
- 特徴
- Productive
- Fast
- Multiplatform
- UI開発に向いている言語
- ホットリロードできる
- 宣言的に書ける
- UI as code
- 親子関係の階層がわかりやすい