Sponsored Link
Monitor your iOS apps and extensions with Embrace
Embrace helps iOS devs maintain fast, stable, and highly performant apps. Our issue detection and resolution tools are designed for early discovery because we capture the full story for each unique session. Plus, we provide crash reporting for iOS extensions – so you get visibility into every issue impacting your users, no matter where they originate in your app. Learn more.
News
tvOS or iPadOS for visionOS compatibility mode?
I'm sure Apple considered this and that there were great reasons to make the iPad the chosen platform for compatibility mode. Still, I can't help but think that Jon Maddox's idea is good, with visionOS relying so heavily on the focus APIs. That said, when people tweak their iPad app to work better with visionOS, it'll also mean we get better support for trackpads in more iPad apps! 🥂
Code
Developing with Swift in Visual Studio Code
Swift support in Visual Studio Code has been great for writing Swift code for the server for quite some time now. The most powerful feature is being able to use Dev Containers to run code in a Linux Docker container seamlessly, and here's Joannis Orlandos to explain and show you how to use it.
Asynchronous SwiftUI buttons
Do you ever wish that SwiftUI's Button
was a little more aware that the tasks you start from a button tab might take a long time? Tired of implementing an isLoading
mechanism in combination with task
modifiers, Thomas Durand set to work on ButtonKit. 🫨
Remove a background from an image in SwiftUI
I worked on an animation app for iPad once that allowed people to take any picture, cut around the subject using their finger, and then animate the extracted image frame by frame. The slightly wonky pictures people would cut out were kinda endearing, but having this new API in iOS 17 would have been much better. Thanks to Artem Novichkov for putting together this guide on how to use it.
iOS Universal links, developer mode, and VPNs
This won't help every one of you, but I must include Dermot Daly's latest blog post here to save days of time and stress for a few of you. Read it now, because he's setting you up to be the hero when this happens to someone you know! 🦹♂️
Design
Vision Pro Apps look boring
Stuart Varrall observes something about the visionOS apps that he has seen so far:
However to me this has resulted in many of the apps I've seen lacking a distinct character. Their screenshots appear bland, making it challenging to distinguish one app from another.
It’s super early days for visionOS design, as Stuart also notes, but in my experiments with the simulator, I have noticed it’s harder to use colour effectively in the semi-transparent “glass” environment than it is on iOS or macOS. I believe this may be the underlying reason many apps have a similar look so far. What I’m confident of, though, is that developers and designers will get the hang of it, and Apple will make adjustments where they are needed, too.
And finally...
… such that an unscrupulous person could technically modify them. 🥽
Comment
Happy Vision Pro pre-order day, at least it is if you live in 🇺🇸!
I'd like nothing more than to write more about visionOS today, but there was some more significant news announced earlier this week. Apple's announcement of court-mandated changes to the rules allowing links to external sites with alternative purchase methods.
I won't cover the details here, as I'm sure you've already seen them. If not, Michael Tsai, as always, has an excellent summary of the announcement and reactions. I will give a couple of thoughts, though.
Apple has been clear about how it sees this issue for several years. I remember Tim Cook mentioning the difficulty of collecting a 27% fee outside the App Store purchase process when he was in court during the Epic trial in 2021, then again when courts in the Netherlands ruled on dating apps in 2022, so there's no excuse for being surprised. Of course, it's a much bigger deal now the additional guideline applies in the US.
My view remains the same as I have written many times before. You can read my thoughts the last time this issue came up in Issue 544's comment, and I'll even quote my conclusion from that issue:
I would write the same today.
I know nothing and am glad I don’t have to fix these problems. However, it seems like my prediction that making the smallest possible concession after every judgment will only make things worse is coming true. Every move brings so much negative attention and additional scrutiny. So, I’ll close this comment the same way I closed my comment in Issue 544:
Dave Verwer