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

WindowInsetsだってテストしたい

 WindowInsetsだってテストしたい

2025/06/20(金) Shibuya.apk #53

Avatar for RyuNen344

RyuNen344

June 20, 2025
Tweet

More Decks by RyuNen344

Other Decks in Programming

Transcript

  1. Outline • About Edge-to-edge enforcement • About BottomSheetDialog / Tenugui

    • Visual Regression Test • Struggle with System UI demo mode • Struggle with IME • Wrap up
  2. About Edge-to-edge enforcement • Android 15Ҏ্ͷ୺຤ͰTarget SDK 35Ҏ্ͷΞϓϦΛ࣮ߦ͢ΔͱEdge-to-edge͕ڧ੍͞ΕΔʢʹ ΦϓτΞ΢τՄʣ •

    Android 16Ҏ্ͷ୺຤ͰTarget SDK 36ͷΞϓϦΛ࣮ߦ͢ΔͱEdge-to-edgeͷڧ੍ΛΦϓτΞ΢τ Ͱ͖ͳ͍
  3. About Edge-to-edge enforcement • Target API level requirements for Google

    Play apps • 2025೥6݄20೔ݱࡏTarget SDK Version 34ͷཁ݅ʹ͍ͭͯͷΈهࡌ • ྫ೥௨ΓͳΒ2025೥8݄31೔Ҏ߱ɺTarget SDK Version 35͕ඞਢͷࢫ͕هࡌ͞ΕΔʢϦϦʔεαΠΫϧ͕มߋ ͞ΕͨͷͰมಈ͋Δ͔΋ʣ • https://support.google.com/googleplay/android-developer/answer/11926878 • Google Play's Target API Level Policy • Major version release͔Β1೥Ҏ಺ͷTarget SDK Versionʹ͢Δඞཁ͕͋Δࢫ • https://support.google.com/googleplay/android-developer/answer/11917020 Target SDK Version35ରԠͰ΍ͬͯ͠·͏΄͏͕࿩͕ૣ͍
  4. About BottomSheetDialog / Tenugui • େલఏ, Edge-to-edgeରԠ͸۪௚ʹ΍Δ • ۜͷ஄ؙ͸ͳ͍ɺؤுΖ͏ •

    ެࣜ΍Araki͞Μɺtomoya0x00͞ΜͩͬͨΓͷهࣄࢀߟʹ͢Δ • Lay out your app within window insets • https://developer.android.com/develop/ui/views/layout/insets • ݹ͍୺຤Ͱ΋ Edge-to-edge ʹ͍ͨ͠ • https://android-developers-jp.googleblog.com/2023/01/is-your-app-providing-a-backward-compatible- edge-to-edge-experience.html • Androidͷedge-to-edgeදࣔରԠͷ࡞ۀϝϞʢCompose޲͚ʣ • https://zenn.dev/tomoya0x00/articles/f854a6825a1182
  5. About BottomSheet / Tenugui • compose-material͸಺෦࣮૷͕Dialog Ͱ͢Βͳ͍͠compose-material3͸API ͕ະͩʹϑϥϑϥ͍ͯ͠Δɾɾɾɾ • ComposeͳAPIʹͭͭ͠΋

    BottomSheetDialogΛ௚઀࢖༻Ͱ͖Δ • Re fl ection·Ͱ࢖ͬͯ BottomSheetBehaviorΛComposeͷ ੈքʹ࣋ͪࠐΉϠϯνϟͳϥΠϒϥϦ
  6. Struggle with System UI demo mode • Status Bar, Navigation

    Bar ͷDiffΛͳͨ͘͢Ίʹ System UI Demo ModeΛ ࢖͏ android 16 emulator ͩͱରԠ͞Εͯͳ͍☹
  7. Struggle with System UI demo mode • sysui_demo_allowed/ sysui_tuner_demo_on •

    BraodcastΛ౤͛ͯදࣔͷ த਎Λม͑Δ IUUQTBOESPJEHPPHMFTPVSDFDPNQMBUGPSNGSBNFXPSLTCBTF  NBTUFSQBDLBHFT4ZTUFN6*EPDTEFNP@NPEFNE
  8. Struggle with System UI demo mode • sysui_demo_allowed / sysui_tuner_demo_on

    ͷ ੾Γସ͑ • Broadcastͷૹ৴ $PVOUEPXO-BUDIΛ࢖ͬͨ#SPBEDBTUૹ৴ IUUQTHJUIVCDPN.PCJMJUZ5FDIOPMPHJFTHPHPTDSFFOTIPUBOESPJE
  9. Refs • Τοδ πʔ ΤοδͷΦϓτΞ΢τͷഇࢭ • https://developer.android.com/about/versions/16/behavior-changes-16#edge-to-edge • Lay out

    your app within window insets • https://developer.android.com/develop/ui/views/layout/insets • ݹ͍୺຤Ͱ΋ Edge-to-edge ʹ͍ͨ͠ • https://android-developers-jp.googleblog.com/2023/01/is-your-app-providing-a-backward-compatible-edge-to-edge- experience.html • Androidͷedge-to-edgeදࣔରԠͷ࡞ۀϝϞʢCompose޲͚ʣ • https://zenn.dev/tomoya0x00/articles/f854a6825a1182 • Gradle Managed DevicesͰςετΛಈ͔ͯ͠ΈΑ͏ • https://swet.dena.com/entry/2022/11/28/100000
  10. EOF