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

Google I/O extended with double S ~ What's new ...

Google I/O extended with double S ~ What's new in Android Develop

Google I/O extended with double S에서 발표한 "What's new in Android Develop" 발표 자료

pluulove (노현석)

June 30, 2021
Tweet

More Decks by pluulove (노현석)

Other Decks in Programming

Transcript

  1. Reference 2 What’s new in Android development tools What's new

    in Android testing tools New in design tools
  2. 4.2 Project upgrade assistant Safe Args support Apply changes update

    Gradle compatibility and configuration changes Quality Bumblebee Android Testing android studio 3 Arctic Fox New in app inspection JDK 11 required to run AGP 7.0 Compose support in the Layout Inspector StateFlow support in data binding Gradle test runner Support for Jetpack Compose New test matrix for multi-device testing
  3. 4 02 Android Studio Arctic Fox 01 Android Studio 4.2

    03 Android Studio Bumblebee 04 Design Tools 05 Summary
  4. Android Gradle ਊ সӒۨ੉٘ ب਋޷ ೒۞Ӓੋਸ ࢎਊ೧ ೐۽ં౟੄ AGP ߡ੹ਸ

    সؘ੉౟ оמ Project upgrade assistant Configuration 5
  5. 8 4.1.3 OpenJDK 1.8.0 4.2.1 OpenJDK 11.0.8 Arctic Fox Beta

    4 OpenJDK 11.0.10 Bumblebee Canary 2 OpenJDK 11.0.10
  6. - Java SE ೒ۖಬ੄ ݽٕച بੑ - ౵ੌ दझమਸ ࢓ಝࠁݶ

    ಫ؊ ҳઑо ੉੹ ߡ੹җ ࢚੉ೣ - ੉੹ ߡ੹ীࢲח Java SE੄ JRE + ѐߊ بҳ ߂ ۄ੉࠳۞ܻܳ ನೣೠ JDKо ನೣ JDK 9+ Migration 9 Java Platform, Standard Edition Oracle JDK 9 Migration Guide https://docs.oracle.com/javase/9/migrate/toc.htm#JSMIG-GUID-7744EF96-5899-4FB2-B34E-86D49B2E89B6
  7. 10 Android Studio Bundle in Open JDK Run Android Studio

    Run Gradle Task Installed Android Studio
  8. Installed Android Studio 11 Android Studio Bundle in Open JDK

    Run Android Studio Run Gradle Task Project Structure
  9. 12 02 Android Studio Arctic Fox 01 Android Studio 4.2

    03 Android Studio Bumblebee 04 Design Tools 05 Summary
  10. 13 2020.3.1 Arctic Fox Year of Intellij Version Intellij Major

    version Studio Major version IntelliJ Platform version
  11. Bumblebee ߡ੹ ੉ܴ 14 Arctic Fox Android Studio੄ Major ߡ੹੉

    
 ୹दؼ ٸ ݃׮ ঌ౵߳ ࣽࢲ۽ ੉ܴਸ ࠗৈ
  12. 19 JDK 11 required to run AGP 7.0 - AGP

    7.0ਸ ࢎਊೞৈ ࠽٘ ೡ ٸ Gradleਸ प೯ ೞ۰ݶ JDK 11੉ ೙ࣻ - Android Studio Arctic Foxী JDK 11੉ ߣٜ۽ ઁҕ JDK 11 required to run AGP 7.0 https://developer.android.com/studio/preview/features#agp-7-0-jdk-11 Gradle JDK ࢸ੿ - Preferences > Build, Execution, Deployment > Build Tools > Gradle
  13. 20 Android Gradle plugin 7.0 Use Java 11 source code

    in your project // build.gradle.kts android { compileSdkVersion(30) compileOptions { sourceCompatibility(JavaVersion.VERSION_11) targetCompatibility(JavaVersion.VERSION_11) } kotlinOptions { jvmTarget = "11" } } Android Gradle plugin 7.0 https://developer.android.com/studio/preview/features#android_gradle_plugin_70
  14. ֎੉౭࠳ UIܳ ࠽٘ೞӝ ਤೠ Android੄ ୭न بҳ ః౟ ब೒ೞҊ ࡅܰѱ

    Androidীࢲ UI ѐߊ ૒ҙ੸ੋ Kotlin APIܳ ࢎਊೞৈ জਸ ࡅܰѱ ҳഅ оמ Compose UI Toolkit 21
  15. 25 Compose Preview Live literals Compose animation preview Motion editor

    update Layout validation Layout inspector Accessibility test framework scanner Animated vector able drawable Compose
  16. Android Studio now uses Gradle test runner 26 Test Android

    Studio now uses Gradle test runner https://developer.android.com/studio/preview/features#test-configurations Android Studioীࢲ Gradleਸ ࢎਊೞৈ ױਤ పझ౟ܳ प೯
  17. 27

  18. 28

  19. 29

  20. New test matrix for multi-device testing 30 Test Instrumented testܳ

    ৈ۞ ӝӝীࢲ ߽۳۽ प೯ పझ౟ Ѿҗ ಁօਸ ࢎਊೞৈ API ࣻળ ژח ೞ٘ਝয ࣘࢿਵ۽ ੋ೧ పझ౟о पಁೞח૑ ഛੋ
  21. 31

  22. 37

  23. 38

  24. 39

  25. ௏ܖ౯ਸ ࢎਊೞח Kotlin জ੄ ҃਋, StateFlow ё୓ܳ ؘ੉ఠ ߄ੋ٬ ࣗझ۽

    ࢎਊೞৈ UIী ؘ੉ఠ ߸҃ ࢎ೦ਸ ੗زਵ۽ ঌܾ ࣻ ੓׮. ؘ੉ఠ ߄ੋ٬਷ ࣻݺ઱ӝܳ ੋधೞݴ UIо ചݶী ಴द ؼ ٸ݅ ౟ܻѢػ׮. StateFlow support in data binding 43 class ViewModel() { val username: StateFlow<String> } <TextView android:id="@+id/name" android:text="@{viewmodel.username}" />
  26. 44 Background Task Inspector জ੄ ߔӒۄ਍٘ ੘স੗ܳ दпച, ݽפఠ݂ ߂

    ٣ߡ Ӓೞח ؘ ب਑੉غח ࢜۽਍ ߔӒۄ਍٘ ੘স Ѩࢎ ӝܳ ࢎਊ - Arctic Fox Canary 3 or Higher - WorkManager 2.5.0 or higher
  27. 47 02 Android Studio Arctic Fox 01 Android Studio 4.2

    03 Android Studio Bumblebee 04 Design Tools 05 Summary
  28. Unified Gradle test runner 49 Test Instrumented testܳ प೯ೡ ٸ

    Gradle੄ Android Instrumented test runnerܳ ా೧ࢲ प೯
  29. 52 Unified Gradle test runner https://developer.android.com/studio/preview/features#bumblebee-unified-test-runner Run Android instrumented tests

    using Gradle Android Studio৬ Android Gradle Pluginীࢲ زੌೠ Android instrumented test runnerܳ ࢎਊ
  30. Unified Gradle test runner https://developer.android.com/studio/preview/features#bumblebee-unified-test-runner Android Studio now uses Gradle

    test runner https://developer.android.com/studio/preview/features#test-configurations 53 Unit Test Instrument Test Instrument Test using Gradle 4.2.1 Arctic Fox Bumblebee Android JUnit - IntelliJ Android instrumented test runner - Gradle test runner Gradle test runner Android instrumented 
 test runner on Gradle
  31. Emulator Snapshots for test failures 54 Test Emulator Snapshots for

    test failures https://developer.android.com/studio/preview/features#emulator-snapshots-for-test-failures Instrumented test పझ౟ पಁܳ ؊ ࡅܰѱ ੤അ
  32. 55 Emulator Snapshots for test failures on Android Studio োѾػ

    ীޯۨ੉ఠীࢲ प೯઺ੋ instrumented testо पಁೠ ா੉झܳ ߊѼೞݶ ӝӝ੄ पಁद ࢚ కܳ झշ ࢫਵ۽ ࢤࢿ - Android Studio Bumblebeeীࢲ 
 Android Gradle Plugin 7.0-alpha13 ੉࢚
  33. 56

  34. 57

  35. What is UTP? ా೤ పझ౟ ೒ۖಬ 
 (Unified Test Platform)

    ೒۞Ӓੋਸ ాೠ ݽٕध 62 ӝמ ѐߊীࢲ పझ౟ ജ҃ਸ ୶࢚ ചೞח ഛ੢ оמೠ ೒ۖಬ ݽٕഋ ೒۞Ӓੋਸ ా೧ పझ౟ प ೯ী ӝמ੉ ୶оغয ӝמਸ ة݀ ੸ਵ۽ ѐߊೞҊ সؘ੉౟ ೡ ࣻ ੓׮ ݽٚ పझ౟ ജ҃ী ؀೧ ೠ о૑ ߑधਵ۽݅ ҳഅೞݶ غח ݽٕध ѐߊ۽ ؊ ݆਷ ӝמਸ ؊ ࡈܻ ߓ ನೡ ࣻ ੓׮ ؊ ૣ਷ ܾܻૉ ઱ӝ
  36. 64 Gradle DSLਸ ࢎਊ೧ࢲ о࢚ ੢஖ ߂ ੢஖ 
 Ӓܛਸ

    ࢶ঱ оמ Android Gradle plugin(AGP)ਸ ా೧ ੢஖ܳ ੹੸ਵ۽(ࢤࢿ, ߓನ, ೧୓) ҙܻ ೙ਃೠ о࢚ ੢஖ ੉޷૑ ߂ SDKܳ ׮਍۽٘ పझ౟ Ѿҗܳ நयೞҊ Emulator snapshotਸ ࢎਊ೧ ࡅܰѱ పझ౟ оמ Gradle Managed Devices
  37. 65 android { testOptions { devices { pixel2api29(com.android.build.api.dsl.ManagedVi rt ualDevice)

    { // Android Studioীࢲ ࠅ ࣻ ੓ח ӝӝ ೐۽೙ ࢎਊ device = "Pixel 2" apiLevel = 29 // Google Play Servicesо ࠛ೙ਃೠ ҃਋ "aosp"۽ ૑੿ оמ systemImageSource = "google" abi = "x86" } } } } Gradle Managed Virtual Devices
  38. 66 android { testOptions { devices { pixel2api29(com.android.build.api.dsl.ManagedVi rt ualDevice)

    { // Android Studioীࢲ ࠅ ࣻ ੓ח ӝӝ ೐۽೙ ࢎਊ device = "Pixel 2" apiLevel = 29 // Google Play Servicesо ࠛ೙ਃೠ ҃਋ "aosp"۽ ૑੿ оמ systemImageSource = "google" abi = "x86" } } } } Gradle Managed Virtual Devices
  39. 67 android { testOptions { devices { pixel2api29(com.android.build.api.dsl.ManagedVi rt ualDevice)

    { // Android Studioীࢲ ࠅ ࣻ ੓ח ӝӝ ೐۽೙ ࢎਊ device = "Pixel 2" apiLevel = 29 // Google Play Servicesо ࠛ೙ਃೠ ҃਋ "aosp"۽ ૑੿ оמ systemImageSource = "google" abi = "x86" } } } } Gradle Managed Virtual Devices
  40. 68 $ gradlew -Pandroid.experimental.androidTest.useUni fi edTestPla tf orm=true [device-name][BuildVariant]AndroidTest పझ౟

    प೯ Gradle Managed Virtual Devices https://developer.android.com/studio/preview/features#get_started Example (MAC) $ ./gradlew -Pandroid.experimental.androidTest.useUni t f
  41. 69 android { testOptions { devices { pixel2api29(com.android.build.api.dsl.ManagedVi rt ualDevice)

    { … } pixel3api29(com.android.build.api.dsl.ManagedVi rt ualDevice) { … } } deviceGroups { phoneAndTablet { targetDevices.addAll(devices.pixel2api29, devices.pixel3aapi30) } } } } Gradle Managed Virtual Devices (Group)
  42. 70 $ gradlew -Pandroid.experimental.androidTest.useUni fi edTestPla tf orm=true [group-name]Group[BuildVariant]AndroidTest పझ౟

    प೯ Gradle Managed Virtual Devices https://developer.android.com/studio/preview/features#get_started Example (MAC) $ ./gradlew -Pandroid.experimental.androidTest.useUni t f
  43. 71

  44. 72

  45. 73 02 Android Studio Arctic Fox 01 Android Studio 4.2

    03 Android Studio Bumblebee 04 Design Tools 05 Summary
  46. 74

  47. 75

  48. 76 Animated Vector Drawable - Preview Animated Vector Drawable -

    Android Studio Bemblebee or Higher What’s new
  49. VirtualLayout : Flow Performance improvements MotionLayout 2.0 2.1 Constraints Flow

    improvements Carousel helper Rotation support / Gestures ViewTransitions Foldable 77 ConstraintLayout
  50. 80 Motion Effect - ੉ز ߑೱী ٮۄ ଵઑೞח ࠭ী ః

    ೐ۨ੐ਸ ੗زਵ۽ ୶о Motion helper ConstraintLayout - MotionEffect https://github.com/androidx/constraintlayout/wiki/MotionEffect
  51. 81 View Transitions - MotionLayout ղীࢲ ױੌ গפݫ੉࣌ਸ ഝࢿചೞח ࢜۽਍

    కӒ ੤ࢎਊ оמೠ ױੌ View Transitions ConstraintLayout 2.1 - ViewTransition https://github.com/androidx/constraintlayout/wiki/ViewTransition
  52. 83 02 Android Studio Arctic Fox 01 Android Studio 4.2

    03 Android Studio Bumblebee 04 Design Tools 05 Summary
  53. 84 Compose preview Live literals Compose animation preview Layout validation

    Layout inspector Accessibility test framework scanner Animated vector drawable preview Design Devices Productivity Android 12 emulator system WearOS paring Heart rate sensor Rollable & foldable emulator Google TV System images Emulator USB passthrough Rotary Controls Wireless ADB Android 12 lint checks Kotlin Coroutines debugger Snapshots for test failures Work manager inspector Test matrix Kotlin symbol processing Incremental gradle support for Kotlin Intellij 2020.3.1 android studio