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

Let's make it compatible with visionOS!

Akio Itaya
November 24, 2023

Let's make it compatible with visionOS!

visionOS Engineer LT会 vol.4

Akio Itaya

November 24, 2023
Tweet

More Decks by Akio Itaya

Other Decks in Programming

Transcript

  1. AKKEY / AKIO ITAYA
    visionOS ରԠνϟϨϯδ
    visionOS Engineer LTձ vol.4
    Native

    View full-size slide

  2. trying
    education
    developing
    AppBrew, inc.
    AkkeyLab, inc.
    inet LLC
    @AkkeyLab
    Engineer
    CEO
    Engineer
    👩💻
    ˎۀ຿ҕୗͰ͓ੈ࿩ʹͳͬͯΔاۀ༷Λআ͖·͢
    Apple Vision Pro icon: https://developer.apple.com/news/?id=wztdeypy

    View full-size slide

  3. trying
    education
    developing
    AppBrew, inc.
    AkkeyLab, inc.
    inet LLC
    @AkkeyLab
    Engineer
    CEO
    Engineer
    👩💻
    ˎۀ຿ҕୗͰ͓ੈ࿩ʹͳͬͯΔاۀ༷Λআ͖·͢
    Apple Vision Pro icon: https://developer.apple.com/news/?id=wztdeypy

    View full-size slide

  4. AppBrew, inc.
    AkkeyLab, inc.
    inet LLC
    @AkkeyLab
    Engineer
    CEO
    Engineer
    👩💻
    trying
    education
    developing
    ˎۀ຿ҕୗͰ͓ੈ࿩ʹͳͬͯΔاۀ༷Λআ͖·͢
    Apple Vision Pro icon: https://developer.apple.com/news/?id=wztdeypy

    View full-size slide

  5. AppBrew, inc.
    AkkeyLab, inc.
    inet LLC
    @AkkeyLab
    Engineer
    CEO
    Engineer
    👩💻
    trying
    education
    developing
    ˎۀ຿ҕୗͰ͓ੈ࿩ʹͳͬͯΔاۀ༷Λআ͖·͢
    Apple Vision Pro icon: https://developer.apple.com/news/?id=wztdeypy

    View full-size slide

  6. visionOS app ։ൃͯ͠Δਓ🙋
    ۀ຿Ͱ

    View full-size slide

  7. ֶͼͷػձΛ࡞Γ͍ͨ…ʂ
    ࣾ಺Ͱ

    View full-size slide

  8. Ұ෦ػೳΛωΠςΟϒରԠ
    β info

    View full-size slide

  9. AppBrew, inc.
    AkkeyLab, inc.
    inet LLC
    @AkkeyLab
    Engineer
    CEO
    Engineer
    👩💻
    trying
    education
    developing
    ˎۀ຿ҕୗͰ͓ੈ࿩ʹͳͬͯΔاۀ༷Λআ͖·͢
    Apple Vision Pro icon: https://developer.apple.com/news/?id=wztdeypy

    View full-size slide

  10. Multi-platform support
    iOS, iPadOS, macOS, visionOS

    View full-size slide

  11. ˎ։ൃ్தͷ΋ͷͰ͢

    View full-size slide

  12. sheet
    β info

    View full-size slide

  13. sheet
    ⚠ can't close 👉
    β info

    View full-size slide

  14. It's not a bug…? 🐛

    View full-size slide

  15. sheet
    ⚠ can't close 👉

    View full-size slide

  16. window
    β info

    View full-size slide

  17. @main
    struct SearchApp: App {
    var body: some Scene {
    WindowGroup(id: "search-main") {…}
    WindowGroup(id: "company-detail") {
    if let selectedCompany {
    CompanyDetailView(company: selectedCompany, showSearchButton: true)
    .padding(32)
    }
    }
    .defaultSize(width: 0.4, height: 0.2, depth: 1, in: .meters)
    }
    }
    ToolbarItem(placement: .topBarTrailing) {
    Button(
    action: {
    openWindow(id: "company-detail")
    },
    label: {
    Image(systemName: "info.bubble")
    }
    )
    }

    View full-size slide

  18. @main
    struct SearchApp: App {
    var body: some Scene {
    WindowGroup(id: "search-main") {…}
    WindowGroup(id: "company-detail") {
    if let selectedCompany {
    CompanyDetailView(company: selectedCompany, showSearchButton: true)
    .padding(32)
    }
    }
    .defaultSize(width: 0.4, height: 0.2, depth: 1, in: .meters)
    }
    }
    ToolbarItem(placement: .topBarTrailing) {
    Button(
    action: {
    openWindow(id: "company-detail")
    },
    label: {
    Image(systemName: "info.bubble")
    }
    )
    }
    tool bar item
    β info

    View full-size slide

  19. @main
    struct SearchApp: App {
    var body: some Scene {
    WindowGroup(id: "search-main") {…}
    WindowGroup(id: "company-detail") {
    if let selectedCompany {
    CompanyDetailView(company: selectedCompany, showSearchButton: true)
    .padding(32)
    }
    }
    .defaultSize(width: 0.4, height: 0.2, depth: 1, in: .meters)
    }
    }
    ToolbarItem(placement: .topBarTrailing) {
    Button(
    action: {
    openWindow(id: "company-detail")
    },
    label: {
    Image(systemName: "info.bubble")
    }
    )
    }
    tool bar item
    β info

    View full-size slide

  20. Also supports iPadOS and macOS

    View full-size slide

  21. ·ͣ͸খن໛ͳΞϓϦΛ৮ͬͯ΋Β͏👩💻
    Sheet ͷऔΓѻ͍ʹ͸஫ҙ ⚠
    Ϛϧν΢Οϯυ΢ͷར༻΋ࢹ໺ʹೖΕΔ🏞
    Summary

    View full-size slide

  22. ·ͣ͸খن໛ͳΞϓϦΛ৮ͬͯ΋Β͏👩💻
    Sheet ͷऔΓѻ͍ʹ͸஫ҙ ⚠
    Ϛϧν΢Οϯυ΢ͷར༻΋ࢹ໺ʹೖΕΔ🏞
    Summary

    View full-size slide

  23. ·ͣ͸খن໛ͳΞϓϦΛ৮ͬͯ΋Β͏👩💻
    Sheet ͷऔΓѻ͍ʹ͸஫ҙ ⚠
    Ϛϧν΢Οϯυ΢ͷར༻΋ࢹ໺ʹೖΕΔ🏞
    Summary

    View full-size slide

  24. try!Swift Tokyo 24೥3݄։࠵ʂ
    PR
    https://tryswift.jp

    View full-size slide

  25. Thank you !!

    View full-size slide