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

Assistive Access: Reinventing Your App for a Ne...

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

Assistive Access: Reinventing Your App for a New (sort of) Generation

Showing off building an app that is optimized for Assistive Access, aka "iOS easy mode", where UI is simplified, navigation is one step at a time, and distractions are removed.

Avatar for Bas Broek

Bas Broek

August 11, 2026

More Decks by Bas Broek

Other Decks in Programming

Transcript

  1. Assistive Access: Reinventing Your App for a New (sort of)

    Generation 1 Bas Broek, DC iOS, August 11th, 2026
  2. Who am I? – Until recently, accessibility for internal apps

     Apple – In the past, macOS VoiceOver  Apple – XING, WeTransfer, open source 2 Bas Broek, DC iOS, August 11th, 2026
  3. Accessibility – Dynamic Type – VoiceOver – Full Keyboard Access

    – Voice Control – Switch Control 3 Bas Broek, DC iOS, August 11th, 2026
  4. Uploading Downloading Don't support Only images Auto-download, show only a

    spinner Settings to select senders to show Transfers from 14 Bas Broek, DC iOS, August 11th, 2026
  5. struct MyApp: App { var body: some Scene { WindowGroup

    { DefaultAppView() } AssistiveAccess { AssistiveAccessAppView() } } } 28 Bas Broek, DC iOS, August 11th, 2026
  6. class AssistiveAccessSceneDelegate: UIHostingSceneDelegate { static var rootScene: some Scene {

    AssistiveAccess { AssistiveAccessAppView() } } } class AppDelegate: UIApplicationDelegate { func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration { let role = connectingSceneSession.role let sceneConfiguration = UISceneConfiguration(name: nil, sessionRole: role) if role == .windowAssistiveAccessApplication { sceneConfiguration.delegateClass = AssistiveAccessSceneDelegate.self } return sceneConfiguration } } 29 Bas Broek, DC iOS, August 11th, 2026
  7. Future wishes – More first party apps! – "Troubleshoot" /

    screenshot/screen recording app – More third party apps! – Settings API 36 Bas Broek, DC iOS, August 11th, 2026
  8. Conclusion – Map out settings that separate app flows –

    Re-think app-flows that fit the Assistive Access model – (Re)build your app using the AssistiveAccess {} Scene – Iterate and learn – Test with users 37 Bas Broek, DC iOS, August 11th, 2026
  9. We do this for our future selves, too 40 Bas

    Broek, DC iOS, August 11th, 2026