Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Review of Google I/O 2017 & Prepare for Google I/O 2018

Review of Google I/O 2017 & Prepare for Google I/O 2018

Google IO Extended Tokyo 2018

Keisuke Kobayashi

May 08, 2018
Tweet

More Decks by Keisuke Kobayashi

Other Decks in Programming

Transcript

  1. Review of Google I/O 2017 &
    Prepare for Google I/O 2018
    Keisuke Kobayashi / kobakei
    Google I/O Extended Tokyo 2018

    View Slide

  2. About Me
    • Keisuke Kobayashi
    • Twitter: kobakei122
    • GitHub: kobakei
    • Kyash, Inc
    • Android engineer / iOS engineer / Eng. Manager
    • ݸਓࣄۀओ

    View Slide

  3. Kyash ID: kobakei
    ײँͷ39ԁʢThank Youʣ͸ͪ͜Β·Ͱʂ

    View Slide

  4. ӡӦͷํʹґཔ͞Εͨ

    View Slide

  5. ӡӦͷํʹґཔ͞Εͨ

    View Slide

  6. View Slide

  7. ໷தͩ͠

    ΏΔ;ΘܥͷLTΛ͠·͢
    ※ࠓ೔͸ίʔυ͸Ұ੾ग़·ͤΜ

    View Slide

  8. ࠓ೔࿩͢͜ͱ
    • Google I/O 2017ͷηογϣϯৼΓฦΓ
    • ࣮ࡍʹۀ຿Ͱ࢖ͬͨ΋ͷͱ͔
    • Google I/O 2018ͷ஫໨ηογϣϯ
    • ಠஅͱภݟͰνϣΠε͠·͢
    • ΄΅AndroidܥͷηογϣϯͰ͢

    View Slide

  9. Google I/O 2017ͷ
    ৼΓฦΓ

    View Slide

  10. ݸਓతʹࢥ͍ग़͕͋Δ΋ͷ
    • Kotlin
    • Android Studio 3.0
    • Architecture Components
    • Oreo௨஌ʢ௨஌νϟϯωϧʣ
    • Adaptive Icon
    • Firebase Performance Monitoring
    • SafetyNet in Developer Console

    View Slide

  11. Kotlin
    • Kotlin͸͍͍ͧ
    • Kyash͸ϑϧKotlin

    View Slide

  12. ໾໨Λऴ͑ͨਓͨͪ
    • Retrolambda
    • KotlinʹϥϜμࣜ͋ΔͷͰෆཁ
    • Lightweight Stream API
    • KotlinͷίϨΫγϣϯ͸ΠέͯΔͷͰෆཁ

    View Slide

  13. ࣮ࡍKotlinͲ͏ʁ
    • ؒҧ͍ͳ͘࠾༻ͯ͠Α͔ͬͨ
    • Null safetyʹΑΔNPEճආ
    • Delegated property, Class delegation
    • ԿΑΓॻ͍ͯͯؾ͍͍࣋ͪ
    • །Ұࣄނͬͨͷ͕Parcelize
    • JellyBeansͰىಈ͠ͳ͘ͳΔόάʢࠓ͸௚ͬͨʣ

    View Slide

  14. Android Studio 3.0
    • ͳ͔ͳ͔ग़ͳ͔ͬͨʢ2017೥11݄ϦϦʔε)
    • Oreoͷ৽ػೳ͕ͦΕ·Ͱ࢖͑ͳͯ͘ਏ͔ͬͨ
    • Adaptive Icons, Autosizing TextViews
    • Ϗϧυ͕ૣ͘ͳͬͨʢΒ͍͠ʣ
    • Profiler͕৽͘͠ͳ͚ͬͨͲɺਖ਼௚͋·Γ࢖ͬͯͳ͍

    View Slide

  15. Architecture Components
    • KyashͰ͸ࠓͷॴ࢖ͬͯͳ͍
    • ։ൃ౰࣌alpha~betaͩͬͨͷͰɺࣅͨΑ͏ͳ࢓૊ΈΛࣗ࡞ͨ͠
    • ෭ۀઌͰಋೖͨ͠
    • Lifecycle & ViewModel
    • RxJava & AutoDisposeͱ૊Έ߹Θͤͨ
    • LiveData, Room, Paging͸ຊ൪Ͱ࢖ͬͨ͜ͱͳ͍

    View Slide

  16. Oreoͷ௨஌
    • ௨஌νϟϯωϧͷ௥Ճ
    • Ϣʔβʔ͕νϟϯωϧ͝ͱʹ௨஌ͷදࣔʗ
    ඇදࣔ΍ԻɾόΠϒΛઃఆՄೳʹ
    • Target SDKΛ্͛ͨΒ௨஌͕ग़ͳ͘ͳͬͯɺ
    ରԠΛഭΒΕͨਓ΋ଟ͍ͷͰ͸ʁ

    View Slide

  17. ༨ஊ:
    DroidKaigi 2018Ͱ࿩ͨ͠
    • ʮ։ൃऀ͕஌͓͖͍ͬͯͨ௨஌ͷྺ࢙ʯͰݕ
    ࡧ͠Α͏
    • ICSʙOreo·Ͱ໢ཏͯ͠௨஌ͷػೳΛ঺հ͠
    ͨ

    View Slide

  18. એ఻:
    Android Pͷ௨஌͸࠷৽ͷςΫϒຊࢀর

    View Slide

  19. Adaptive Icon
    • ɹɹ͕ରԠͯ͘͠Εͨ
    • Oreo୺຤ͳΒશͯͰΞχϝʔγϣϯ͢ΔΘɹ
    ͚Ͱ͸ͳ͍
    • Nexus 5XΤϛϡϨʔλͰ͸ಈ͍ͨ
    • Huawei Mate9Ͱ͸ݟͨ໨มΘΒͣ

    View Slide

  20. Tips: ຊ൪ͱ։ൃ൛ΛΘ͔Γ΍͘͢

    View Slide

  21. ic_launcher.xml
    • Build type͝ͱʹΞΠίϯͷഎܠ৭Λม͑Δ

    View Slide

  22. Firebase Performance
    Monitoring
    • ىಈ࣌ؒ΍ಛఆͷϝιουͷ࣮ߦ࣌ؒΛܭଌ
    Ͱ͖Δ
    • ΊͪΌͪ͘Όظ଴ͯͨ͠
    • ىಈ࣌ؒΛૣ͍ͨ͘͠Ϟνϕʔγϣϯ͕͋ͬ
    ͨ

    View Slide

  23. Firebase Performance
    Monitoring

    View Slide

  24. ໰୊͕ൃ֮
    • ͋Δ೔ಥવ͏ͪͷPM͕KyashΛ࢖͑ͳ͘ͳͬ
    ͨ
    • ௐ΂ͨͱ͜ΖɺHuaweiͷݹ͍୺຤Ͱىಈ࣌ʹ
    Ϋϥογϡ͢Δঢ়ଶʹͳͬͯͨ

    View Slide

  25. View Slide

  26. View Slide

  27. SafetyNet
    • ϧʔτԽͨ͠୺຤΍GoogleͷೝূΛड͚͍ͯ
    ͳ͍୺຤Λ஄͘
    • ΞϓϦ಺͔Βݺ΂ΔAPIͱɺGoogle Play
    ConsoleͰͷΠϯετʔϧ੍ޚ͕͋Δ

    View Slide

  28. ྫ͑͹͜ΜͳϨϏϡʔ
    • ͔ͤͬ͘Πϯετʔϧͨ͠ͷʹϧʔτ୺຤Ͱ
    ͸࢖͑ͳ͍ͬͯݴΘΕ·ͨ͠ɻ

    ΫιΞϓϦ

    View Slide

  29. ͳͥ͜͏ͳΔͷ͔ʁ
    • ϥϯλΠϜͷΈϧʔτνΣοΫͯ͠΋ɺΠϯε
    τʔϧ͸Ͱ͖ͯ͠·͏ͷͰɺGoogle PlayͰϨ
    ϏϡʔΛॻ͔Εͯ͠·͏
    • ͦͯ͠େମ˒1͕෇͘
    • SafetyNetͳΒɺΠϯετʔϧ࣌ͱϥϯλΠϜͰ
    ಉ͡νΣοΫΛ૸ΒͤΔ͜ͱ͕Ͱ͖Δ

    View Slide

  30. Google Play Developer Console
    ୺຤Χλϩάˠআ֎͞Εͨ୺຤ˠআ֎ϧʔϧͷ؅ཧ

    View Slide

  31. Google I/O 2018
    ஫໨ηογϣϯ

    View Slide

  32. Fragments in the Architecture
    Components world
    • AACʹΑͬͯFragmentͷ໾ׂ͕ਐԽͨ͠
    • ͦͷ੹຿ͷมߋͱਐߦதͷAPIมߋʹ͍ͭͯ঺
    հ

    View Slide

  33. Protips: a fresh look at advanced
    topics for Android experts
    • Android͕ग़͔ͯΒ10೥ܦ͚ͭͲɺ૬มΘΒ
    ͣݹ͍πʔϧ΍API࢖ͬͯΔਓ͕͍Δ
    • Ϟμϯͳπʔϧ΍ɺඇਪ঑ͷ࣮૷ύλʔϯΛ
    ঺հ
    • ͓ͬ͞Μ޲͚ηογϣϯʁ

    View Slide

  34. How to Kotlin - from the Lead
    Kotlin Language Designer
    • JetBrainsͷKotlinͷϦʔυݴޠઃܭऀʹΑΔ
    ηογϣϯ
    • ΑΓKotlinΆ͍ॻ͖ํ΍͋·Γ஌ΒΕͯͳ͍

    ύϫϑϧͳػೳʹ͍ͭͯ঺հͯ͘͠ΕΔ

    View Slide

  35. Android KTX: sweetening
    Android Kotlin development
    • JakeਆʹΑΔηογϣϯ
    • KTXͰ1࣌ؒ࿩͢͜ͱ͋ΔΜͩΖ͏͔

    View Slide

  36. What's new with ConstraintLayout
    and Android Studio design tools
    • ConstraintLayout 2.0ͷ৽ػೳͷ঺հ

    View Slide

  37. Paging with RecyclerView
    • AACʹ৽ͨʹ௥Ճ͞ΕͨPaging Libraryͷ঺հ
    • Room΍Retrofitͱ૊Έ߹ΘͤΔํ๏ͳͲ

    View Slide

  38. Enjoy Google I/O

    View Slide