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
340
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
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
2.4k
今日から始める依存性の注入 / First Time Dependency Injection
kobakei
26
7.7k
iOSアプリの技術的負債をどう返済したか / How to repay the technical debt of iOS app
kobakei
2
1k
iOSアプリ内で不正なSSL証明書を検知する / SSL Pinning for iOS apps
kobakei
34
12k
Kyashアプリ開発の現場
kobakei
4
2.9k
APIクライアントをCodableで置き換えた話
kobakei
0
1.6k
開発者が知っておきたい通知の歴史
kobakei
9
7.8k
mockito-kotlin
kobakei
1
540
2017年に新規アプリを立ち上げた話
kobakei
2
1.1k
Other Decks in Programming
See All in Programming
RubyとGoでゼロから作る証券システム: 高信頼性が求められるシステムのコードの外側にある設計と運用のリアル
free_world21
0
310
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
1k
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
590
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
750
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1.1k
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
260
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
250
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
1.1k
Swift ConcurrencyでよりSwiftyに
yuukiw00w
0
270
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
1.1k
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
230
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
120
Featured
See All Featured
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
990
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
290
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
180
Building the Perfect Custom Keyboard
takai
2
710
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
The Curious Case for Waylosing
cassininazir
0
270
Prompt Engineering for Job Search
mfonobong
0
200
A Tale of Four Properties
chriscoyier
163
24k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
110
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
GraphQLの誤解/rethinking-graphql
sonatard
75
11k
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