It was an absolutely incredible WWDC 2024, and I was fortunate enough to witness the Keynote sitting in the shade at Apple Park. Apple Intelligence is here, and Apple likes to call it AI for the rest of us.
From the introduction of AI to significant updates in Swift, SwiftUI, and visionOS, this year's WWDC showcased Apple's commitment to productivity while maintaining a strong focus on privacy and user experience.
Read on to see nine major WWDC highlights for mobile developers and watch Runway’s podcast episode where the biggest Apple fans inside the company react to some of the announcements.
‍
‍
A new era with Apple Intelligence
One of the standout highlights was the introduction of Apple Intelligence, the system that integrates generative AI capabilities directly into Apple devices.
Apple Intelligence primarily runs on the device itself, using a highly capable large language model (LLM) optimied to run efficiently on Apple devices. This approach ensures low latency, better user experience, and enhanced privacy.
Apple Intelligence includes an on-device semantic index that organizes personal information across apps, allowing context-aware interactions and personalised experiences. You can also provide semantic search results in your app using Core Spotlight.
If you have worked with App Intents before, you are in a great position to add new AI capabilities to your apps and interact with them on the user's behalf, enabling more natural and integrated experiences across the system.
Another new addition is the Image Playground API that brings AI-driven image generation capabilities to third-party apps. Images are created directly on the user's device, allowing for unlimited experimentation without privacy concerns or additional costs. You can quickly add Image Playground functionality to your apps with just a few lines of SwiftUI code.
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679dbdeba4532829f4b90ed_assistance-schemas.png)
To learn more about adding Apple Intelligence to your app via Siri, check out the session on “Bring your app to Siri”.
Swiftly swift testing
Swift Testing is designed specifically for Swift and offers an expressive way to write tests compared to the existing XCTest framework. As mentioned in the "Meet Swift Testing" session, writing a test is as easy as adding a function with the `Test` attribute to your test suite. You can use macros like `#expect` to evaluate the result of any Swift expression.
Swift Testing also introduces a tagging system to organize your tests and create targeted test plans. For example, you can tag tests based on the module they cover or the device they should run on. Also, the test navigator organizes your tests by tag and displays parameterised tests, making it easy to navigate and understand your test suite's structure.
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679dc7c245c60ac71073610_swift-testing.png)
As covered in the "Go further with Swift Testing" session, the framework also offers advanced capabilities for more complex testing needs. One such feature is the ability to run tests in parallel by default.
Watch the two sessions and explore how this new framework helps you write more effective and maintainable tests for your Swift projects!
A clearer vision with visionOS 2.0 and RealityKit updates
Apple's visionOS 2.0 and RealityKit updates offer you more powerful tools to create immersive and real experiences.
visionOS 2.0 introduces some noteworthy enhancements to volumetric apps. You can now resize volumes using the SwiftUI scene modifier `windowResizability`, giving you precise control over your content's presentation. Users also gain the ability to adjust volume sizes themselves.
RealityKit 4 extends its 3D rendering capabilities to iOS, iPadOS, and macOS, aligning them with visionOS. This cross-platform support enables you to create immersive experiences that work across Apple devices.
To dive deeper, check out the Design great visionOS apps session. This session showcases great visionOS apps, providing inspiration for creating some amazing spatial experiences.
For practical implementation, the Discover RealityKit APIs session offers real-world examples of how to leverage these new features across iOS, macOS, and visionOS.
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679dcea6c4710c1cb43d861_content-effects.png)
To explore the new custom hover effects, watch the dedicated session on it. It guides you through creating multiple unique hover interactions that were not possible before!
Code assistance with Swift Assist
As Swift celebrates its first decade, Apple recognises the importance of natural language in transforming ideas into code. This year, we have Swift Assist, Apple's answer to AI-powered coding companions!
Swift Assist is a native Xcode feature designed specifically for Apple developers. Unlike AI assistants like ChatGPT or Claude, It runs directly on your Mac, ensuring your code remains private and secure. Swift Assist can also access and understand your entire project, generating personalised code suggestions that align with your existing codebase and coding style.
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679dd699074fe2e4c670eb2_code-assist.png)
Swift Assist is trained on Apple's latest SDKs and Swift language features. This means you receive the latest and the best suggestions, something that other AI models with outdated training data cannot match.
Apple is rolling out this feature gradually, and it will be released later this year.
Live activities on watchOS
watchOS 11 brings the iOS feature to your wrist: Live Activities support. This update helps users interact with timely information from your apps on Apple Watch, and the best part? You can leverage your existing iOS Live Activity code to make it happen!
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679ddad15dbff89aa5452dc_watch-os.png)
The What's new in watchOS 11 session talks more in detail about the new APIs. As developers, you can now integrate Double Tap support into your app for quick, one-handed interactions.
Controlling the new controls API in iOS 18
iOS 18 introduces the Controls API that extends your app's reach across the entire system. This allows you to create custom controls that users can add to their Control Center, assign to the Action button on iPhone 15 Pro, or display on their Lock Screen. Implementing these controls makes your app's key functions more accessible to the whole user experience. Remember, the goal is to provide value through convenience.
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679de094c9a953339a92e71_controls-api.png)
The Extending Your App's Controls Across the System session introduces implementation details well. It covers how to add controls to various system areas, explores integrating widgets into these spaces and makes them configurable.
Swift 6 and celebrating 10 years!
Happy birthday, Swift! Apple announced Swift 6, which makes your code safer, more efficient, and more versatile.
The highlight of Swift 6 is its compile-time data-race safety feature. Data races are those pesky (ugh) bugs that occur when multiple threads access shared data simultaneously. Swift 6 identifies potential data races at compile-time, eliminating an entire class of bugs before your code even runs. Imagine catching these errors as you type rather than during testing or, worse, in production!
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679df28d4a3093444e42f4a_swift6.png)
The WWDC session Migrate your app to Swift 6 offers a practical, hands-on approach. This session walks you through migrating an example app to Swift 6, with a particular focus on how the compiler identifies data races in your code.
Also, to make it easier for everyone to help improve Swift, Apple created a new home on GitHub called SwiftLang. This hosts projects, including the Swift compiler, the Foundation framework, and other key libraries.
SwiftUI gets even better
With each update, SwiftUI, Apple’s modern UI framework, keeps improving. This year's improvements make creating beautiful, responsive apps across all Apple platforms easier than ever!
I love preview-driven development and am so excited that Xcode now offers a smoother preview experience. The new dynamic linking architecture uses the same build artifacts for both previews and when you run your app. This means less rebuilding and more time designing. Plus, the new @Previewable macro simplifies setting up previews, especially when working with dynamic properties like @State.
SwiftUI now gives you more control over how your app looks and feels, like custom hover effects for visionOS apps, new options for window behaviour and styling on macOS and a text renderer API for creating some popping visual effects and animations.
Apple has also improved text layout options to give you more control over how text appears in your app. iPadOS has a new tab interface for apps that helps create more intuitive navigation. Finally, enhanced support for visionOS features lets you build more immersive spatial experiences.
Other notable additions include custom containers, mesh gradients, and scrolling customisations. These features give you more tools to create unique, engaging user interfaces.
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679e06dcab230afcd2fc798_swift-ui.png)
The What's new in SwiftUI session covers these updates in detail and shows you how to implement new features in your apps.
If you want to make the most of SwiftUI, the SwiftUI Essentials session is a must-watch. It guides you through best practices to fully leverage SwiftUI's power.
Writing tools for the writer in (and outside of)Â you
Apple introduced a suite of powerful new Writing Tools that leverage on-device machine learning to assist users with their writing tasks. These tools can help rewrite, proofread, and summarise text, making writing more efficient and effective.
One of the features of Writing Tools is its integration with existing apps. If your app already uses standard UI text fields, you will automatically get these new features for free! This means your users can start benefiting from Writing Tools without any additional work on your part.
If you want more control over how Writing Tools behaves within your app, the new TextView delegate API offers customisation options. With this API, you can fine-tune how your app responds when Writing Tools is active. For example, you might choose to pause syncing or disable certain features to avoid conflicts while the user is actively editing their text.
![](https://cdn.prod.website-files.com/5ef1f28e08458502ba614d85/6679e1493f8f9bd6834bccd5_writing-tools.png)
To learn more about Writing Tools and how to implement them in your app, be sure to check out the Get Started with Writing Tools session from WWDC 2024. This session covers everything from the basic integration process to more advanced topics like customising behaviour with delegate methods
We have a great year ahead as Apple developers
WWDC 2024 has set the stage for a new era of app development on Apple platforms. With the introduction of Apple Intelligence, you have access to on-device AI capabilities that personalise user experiences while maintaining privacy.
There has never been a better time to develop for Apple Platforms.
‍
![](https://cdn.prod.website-files.com/5edfa38a1bd219267bdf69b7/66024df143b8e537c50691a8_flight-deck.png)