Give your simulator superpowers

RocketSim: An Essential Developer Tool
as recommended by Apple

Issue 112
Apr 26, 2022

Stay updated with the latest in Swift & SwiftUI

The 2nd largest newsletter in the Apple development community with 18,608 developers. Don't miss out – Join today:


Accessibility? Do we have time for that?

It's, unfortunately, a common topic in many teams I've worked in. Accessibility often becomes a victim of time pressure and is one of the first things thrown off the backlog.

Not long ago, Bas Broek joined our team at WeTransfer and brought in a lot of experience regarding accessibility. One of the things we started doing for every sprint lately is to assign a small accessibility task to everyone on the team.

By gaining insights into the state of your app regarding a11y, you'll create a starting point to improve. Issues can be as minor as "improve accessibility for button X" all bits will help!

If you're new to accessibility in apps, I encourage you to explore Bas' blog. He actually wrote about his experience of adding accessibility support to the custom tab bar we will have in the WeTransfer app.

Hopefully, we inspired you and your team to do the same thing. Enjoy this week's SwiftLee weekly!

THIS WEEK'S BLOG POST

After diving into async-await not long ago, it was time to look into async streams. We've recently implemented async-await alternative APIs in the WeTransfer app, for which an AsyncThrowingStream has been an excellent alternative for our FileDownloader. Curious? The code example covers precisely that!

SPONSORED

Build real-time chat messaging in less time. Rapidly ship in-app messaging with our highly reliable chat infrastructure and feature-rich SDKs. Improve your overall in-app conversion, engagement, and retention.

MONTHLY GIVEAWAY

If you've missed it, this month's monthly giveaway allows you to win a copy of the App Icon Book by Michael Flarup. You've got until Monday to join!

SWIFTLEE JOBS

Get your job positions listed on all 190+ SwiftLee articles and 4 SwiftLee Weekly editions. Read more.
Browse Swift-related Jobs, or add your own on SwiftLee Jobs.

CURATED FROM THE COMMUNITY

SWIFT

I’ve seen many different approaches to solving the problem of presenting multiple alerts and sheets in SwiftUI. Since iOS 15, some of the alert APIs changes have made it harder to manage enum-based alerts, but this solution by Daniel Saidi might be a suitable replacement.
In Diagnostics, we store logs to a file to eventually make it possible to share these with the support team of your app. Majid Jabrayilov inspired me to look into OSLog a bit more to see whether we can benefit from its functionality to do the same.
Before you read the article: how many methods do you know? And from those: do you know why they exist and how they differ? If so, you can skip this article. If not, let Rizwan Ahmed explain them to you.
I’m thanking Donny Wals here for reminding me not just to use code as is but to make sure I understand what I’m doing. I’ll be honest here: I did not know about these differences, and I’m delighted I do now!
Daniel Saidi does a great job explaining how you can deal with multiple platforms in your code. I’ve seen his code examples in several image libraries, and I liked how he showed several ways of solving the same problem.
I agree with Soroush here; naming your colors can be fun and helpful! WeTransfer has several custom colors, and we’ve all named them. Colors like Amsterdam, Helsinki, etc., make it more fun, and I’m actually visualizing the matching colors while writing this summary.
It’s been a while since I’ve had to support external screens, but I do remember it being quite interesting to work on. I was happy to see this article by Keith Harrison bringing back memories and showing that there’s a way to test external screens in the Simulator!