Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Review of Google I/O 2017 & Prepare for Google ...
Search
Keisuke Kobayashi
May 08, 2018
Programming
0
310
Review of Google I/O 2017 & Prepare for Google I/O 2018
Google IO Extended Tokyo 2018
Keisuke Kobayashi
May 08, 2018
Tweet
Share
More Decks by Keisuke Kobayashi
See All by Keisuke Kobayashi
今日から始める依存性の注入 / First Time Dependency Injection
kobakei
26
7.4k
iOSアプリの技術的負債をどう返済したか / How to repay the technical debt of iOS app
kobakei
2
930
iOSアプリ内で不正なSSL証明書を検知する / SSL Pinning for iOS apps
kobakei
34
11k
Kyashアプリ開発の現場
kobakei
4
2.7k
APIクライアントをCodableで置き換えた話
kobakei
0
1.5k
開発者が知っておきたい通知の歴史
kobakei
9
7.5k
mockito-kotlin
kobakei
1
510
2017年に新規アプリを立ち上げた話
kobakei
2
1.1k
Everything of CI/CD in Kyash Android
kobakei
0
1.6k
Other Decks in Programming
See All in Programming
Domain-Driven Transformation
hschwentner
2
1.9k
JavaScriptツール群「UnJS」を5分で一気に駆け巡る!
k1tikurisu
9
1.8k
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
250
昭和の職場からアジャイルの世界へ
kumagoro95
1
380
Conform を推す - Advocating for Conform
mizoguchicoji
3
690
WebDriver BiDiとは何なのか
yotahada3
1
140
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
2
450
負債になりにくいCSSをデザイナとつくるには?
fsubal
9
2.4k
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
740
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
120
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
110
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Become a Pro
speakerdeck
PRO
26
5.1k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
How to Ace a Technical Interview
jacobian
276
23k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
What's in a price? How to price your products and services
michaelherold
244
12k
Side Projects
sachag
452
42k
Documentation Writing (for coders)
carmenintech
67
4.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Transcript
Review of Google I/O 2017 & Prepare for Google I/O
2018 Keisuke Kobayashi / kobakei Google I/O Extended Tokyo 2018
About Me • Keisuke Kobayashi • Twitter: kobakei122 • GitHub:
kobakei • Kyash, Inc • Android engineer / iOS engineer / Eng. Manager • ݸਓࣄۀओ
Kyash ID: kobakei ײँͷ39ԁʢThank Youʣͪ͜Β·Ͱʂ
ӡӦͷํʹґཔ͞Εͨ
ӡӦͷํʹґཔ͞Εͨ
None
தͩ͠ ΏΔ;ΘܥͷLTΛ͠·͢ ※ࠓίʔυҰग़·ͤΜ
ࠓ͢͜ͱ • Google I/O 2017ͷηογϣϯৼΓฦΓ • ࣮ࡍʹۀͰͬͨͷͱ͔ • Google I/O
2018ͷηογϣϯ • ಠஅͱภݟͰνϣΠε͠·͢ • ΄΅AndroidܥͷηογϣϯͰ͢
Google I/O 2017ͷ ৼΓฦΓ
ݸਓతʹࢥ͍ग़͕͋Δͷ • Kotlin • Android Studio 3.0 • Architecture Components
• Oreo௨ʢ௨νϟϯωϧʣ • Adaptive Icon • Firebase Performance Monitoring • SafetyNet in Developer Console
Kotlin • Kotlin͍͍ͧ • KyashϑϧKotlin
Λऴ͑ͨਓͨͪ • Retrolambda • KotlinʹϥϜμࣜ͋ΔͷͰෆཁ • Lightweight Stream API •
KotlinͷίϨΫγϣϯΠέͯΔͷͰෆཁ
࣮ࡍKotlinͲ͏ʁ • ؒҧ͍ͳ͘࠾༻ͯ͠Α͔ͬͨ • Null safetyʹΑΔNPEճආ • Delegated property, Class
delegation • ԿΑΓॻ͍ͯͯؾ͍͍࣋ͪ • །Ұࣄނͬͨͷ͕Parcelize • JellyBeansͰىಈ͠ͳ͘ͳΔόάʢࠓͬͨʣ
Android Studio 3.0 • ͳ͔ͳ͔ग़ͳ͔ͬͨʢ201711݄ϦϦʔε) • Oreoͷ৽ػೳ͕ͦΕ·Ͱ͑ͳͯ͘ਏ͔ͬͨ • Adaptive Icons,
Autosizing TextViews • Ϗϧυ͕ૣ͘ͳͬͨʢΒ͍͠ʣ • Profiler͕৽͘͠ͳ͚ͬͨͲɺਖ਼͋·Γͬͯͳ͍
Architecture Components • KyashͰࠓͷॴͬͯͳ͍ • ։ൃ࣌alpha~betaͩͬͨͷͰɺࣅͨΑ͏ͳΈΛࣗ࡞ͨ͠ • ෭ۀઌͰಋೖͨ͠ • Lifecycle
& ViewModel • RxJava & AutoDisposeͱΈ߹Θͤͨ • LiveData, Room, Pagingຊ൪Ͱͬͨ͜ͱͳ͍
Oreoͷ௨ • ௨νϟϯωϧͷՃ • Ϣʔβʔ͕νϟϯωϧ͝ͱʹ௨ͷදࣔʗ ඇදࣔԻɾόΠϒΛઃఆՄೳʹ • Target SDKΛ্͛ͨΒ௨͕ग़ͳ͘ͳͬͯɺ ରԠΛഭΒΕͨਓଟ͍ͷͰʁ
༨ஊ: DroidKaigi 2018Ͱͨ͠ • ʮ։ൃऀ͕͓͖͍ͬͯͨ௨ͷྺ࢙ʯͰݕ ࡧ͠Α͏ • ICSʙOreo·Ͱཏͯ͠௨ͷػೳΛհ͠ ͨ
એ: Android Pͷ௨࠷৽ͷςΫϒຊࢀর
Adaptive Icon • ɹɹ͕ରԠͯ͘͠Εͨ • OreoͳΒશͯͰΞχϝʔγϣϯ͢ΔΘɹ ͚Ͱͳ͍ • Nexus 5XΤϛϡϨʔλͰಈ͍ͨ
• Huawei Mate9ͰݟͨมΘΒͣ
Tips: ຊ൪ͱ։ൃ൛ΛΘ͔Γ͘͢
ic_launcher.xml • Build type͝ͱʹΞΠίϯͷഎܠ৭Λม͑Δ
Firebase Performance Monitoring • ىಈ࣌ؒಛఆͷϝιουͷ࣮ߦ࣌ؒΛܭଌ Ͱ͖Δ • ΊͪΌͪ͘Όظͯͨ͠ • ىಈ࣌ؒΛૣ͍ͨ͘͠Ϟνϕʔγϣϯ͕͋ͬ
ͨ
Firebase Performance Monitoring
͕ൃ֮ • ͋Δಥવ͏ͪͷPM͕KyashΛ͑ͳ͘ͳͬ ͨ • ௐͨͱ͜ΖɺHuaweiͷݹ͍Ͱىಈ࣌ʹ Ϋϥογϡ͢Δঢ়ଶʹͳͬͯͨ
None
None
SafetyNet • ϧʔτԽͨ͠GoogleͷೝূΛड͚͍ͯ ͳ͍Λ͘ • ΞϓϦ͔ΒݺΔAPIͱɺGoogle Play ConsoleͰͷΠϯετʔϧ੍ޚ͕͋Δ
ྫ͑͜ΜͳϨϏϡʔ • ͔ͤͬ͘Πϯετʔϧͨ͠ͷʹϧʔτͰ ͑ͳ͍ͬͯݴΘΕ·ͨ͠ɻ ΫιΞϓϦ
ͳͥ͜͏ͳΔͷ͔ʁ • ϥϯλΠϜͷΈϧʔτνΣοΫͯ͠ɺΠϯε τʔϧͰ͖ͯ͠·͏ͷͰɺGoogle PlayͰϨ ϏϡʔΛॻ͔Εͯ͠·͏ • ͦͯ͠େମ˒1͕͘ • SafetyNetͳΒɺΠϯετʔϧ࣌ͱϥϯλΠϜͰ
ಉ͡νΣοΫΛΒͤΔ͜ͱ͕Ͱ͖Δ
Google Play Developer Console Χλϩάˠআ֎͞Εͨˠআ֎ϧʔϧͷཧ
Google I/O 2018 ηογϣϯ
Fragments in the Architecture Components world • AACʹΑͬͯFragmentͷׂ͕ਐԽͨ͠ • ͦͷͷมߋͱਐߦதͷAPIมߋʹ͍ͭͯ
հ
Protips: a fresh look at advanced topics for Android experts
• Android͕ग़͔ͯΒ10ܦ͚ͭͲɺ૬มΘΒ ͣݹ͍πʔϧAPIͬͯΔਓ͕͍Δ • Ϟμϯͳπʔϧɺඇਪͷ࣮ύλʔϯΛ հ • ͓ͬ͞Μ͚ηογϣϯʁ
How to Kotlin - from the Lead Kotlin Language Designer
• JetBrainsͷKotlinͷϦʔυݴޠઃܭऀʹΑΔ ηογϣϯ • ΑΓKotlinΆ͍ॻ͖ํ͋·ΓΒΕͯͳ͍ ύϫϑϧͳػೳʹ͍ͭͯհͯ͘͠ΕΔ
Android KTX: sweetening Android Kotlin development • JakeਆʹΑΔηογϣϯ • KTXͰ1࣌ؒ͢͜ͱ͋ΔΜͩΖ͏͔
What's new with ConstraintLayout and Android Studio design tools •
ConstraintLayout 2.0ͷ৽ػೳͷհ
Paging with RecyclerView • AACʹ৽ͨʹՃ͞ΕͨPaging Libraryͷհ • RoomRetrofitͱΈ߹ΘͤΔํ๏ͳͲ
Enjoy Google I/O