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
300
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.2k
iOSアプリの技術的負債をどう返済したか / How to repay the technical debt of iOS app
kobakei
2
890
iOSアプリ内で不正なSSL証明書を検知する / SSL Pinning for iOS apps
kobakei
34
11k
Kyashアプリ開発の現場
kobakei
4
2.6k
APIクライアントをCodableで置き換えた話
kobakei
0
1.4k
開発者が知っておきたい通知の歴史
kobakei
9
7.3k
mockito-kotlin
kobakei
1
500
2017年に新規アプリを立ち上げた話
kobakei
2
1k
Everything of CI/CD in Kyash Android
kobakei
0
1.5k
Other Decks in Programming
See All in Programming
Rubyのobject_id
qnighy
6
1.3k
RAGの回答精度評価用のQAデータセットを生成AIに作らせた話
kurahara
0
250
いまから追い上げる、Jetpack Compose トレーニング
nyafunta9858
0
590
The Shape of a Service Object
inem
0
520
Securify_エンジニア採用資料
3shake
0
100
GenU導入でCDKに初挑戦し、悪戦苦闘した話
hideg
0
160
Lessons by WebAssembly app in production on CDN Edge Computing Service
tetsuharuohzeki
0
210
KSPの導入・移行を前向きに検討しよう!
shxun6934
PRO
0
280
o1モデルのプロンプトエンジニアリングって?
ktc_wada
0
260
エラーレスポンス設計から考える、0→1開発におけるGraphQLへの向き合い方
bicstone
5
1.5k
Shinjuku.rb#95:心の技術書紹介
free_world21
1
110
A New Era of Testing
mannodermaus
2
510
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
How STYLIGHT went responsive
nonsquared
93
5.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
Documentation Writing (for coders)
carmenintech
65
4.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
401
65k
Become a Pro
speakerdeck
PRO
22
4.9k
Designing for humans not robots
tammielis
248
25k
Designing with Data
zakiwarfel
98
5k
Art, The Web, and Tiny UX
lynnandtonic
294
20k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
43
2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Large-scale JavaScript Application Architecture
addyosmani
508
110k
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