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.3k
iOSアプリの技術的負債をどう返済したか / How to repay the technical debt of iOS app
kobakei
2
920
iOSアプリ内で不正なSSL証明書を検知する / SSL Pinning for iOS apps
kobakei
34
11k
Kyashアプリ開発の現場
kobakei
4
2.7k
APIクライアントをCodableで置き換えた話
kobakei
0
1.5k
開発者が知っておきたい通知の歴史
kobakei
9
7.4k
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
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
120
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
200
急成長期の品質とスピードを両立するフロントエンド技術基盤
soarteclab
0
920
선언형 UI에서의 상태관리
l2hyunwoo
0
140
バグを見つけた?それAppleに直してもらおう!
uetyo
0
170
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
事業成長を爆速で進めてきたプロダクトエンジニアたちの成功談・失敗談
nealle
3
1.4k
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
190
これが俺の”自分戦略” プロセスを楽しんでいこう! - Developers CAREER Boost 2024
niftycorp
PRO
0
190
モバイルアプリにおける自動テストの導入戦略
ostk0069
0
110
DevFest Tokyo 2025 - Flutter のアプリアーキテクチャ現在地点
wasabeef
5
900
CSC509 Lecture 14
javiergs
PRO
0
130
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
510
110k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.3k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Gamification - CAS2011
davidbonilla
80
5.1k
Faster Mobile Websites
deanohume
305
30k
Side Projects
sachag
452
42k
Being A Developer After 40
akosma
87
590k
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