As I detailed in a recent episode of AppStories, I’ve spent several weeks tweaking my iPhone’s Home Screen and playing around with different approaches to widgets and app icons. The layout I eventually settled on (which you can find in the AppStories show notes) takes advantage of dark mode to create the illusion of widgets “blending” into the wallpaper – specifically, the Soor widgets at the top of the page. Given how I believe Soor’s developer Tanmay Sonawane has taught Apple a lesson when it comes to building Apple Music widgets for iOS 14, and considering the app’s most recent update, I thought I’d write about these widgets in more detail.
The first thing you should know is this: Apple’s Music widget for iOS 14 is lazy and limited to showing you music you recently played in the Music app, and nothing more. By contrast, Soor offers a highly customizable mix of different widgets with support for inline configuration and multiple sizes: there’s a Now Playing widget with playback controls and your Up Next queue; a Magic Mix widget lets you instantly play a magic mix (Soor’s equivalent of smart playlists, which are still missing from Apple Music) with one tap; and with the Music Collection widget, you can add any section from the app to the Home Screen, including specific albums or playlists, top songs, and more. The flexibility offered by Soor is exactly what I was hoping Apple would do with their Music widgets, but they didn’t.
As you may have heard on AppStories, I’m using three Soor widgets in a stack at the top of my Home Screen: Now Playing, Magic Mix, and Favorites. By far my most used one is the Now Playing widget, which provides me with an instant overview of what’s playing and coming up next; because Soor uses the native system music player, anything playing in the Music app is also displayed in Soor, so if you prefer to manage your queue in Apple’s app but rely on Soor’s widgets for the Home Screen, you can do that.
What’s even more impressive, however, is the workaround Sonawane implemented in the app’s latest update: if you enable playback controls in the Now Playing widget’s configuration screen, tapping the play/pause and skip buttons in the widget will not launch the Soor app. In theory, this shouldn’t be possible since widgets in iOS 14 do not support inline interactions: any tap on a widget opens the associated app. I don’t know the exact details of Soor’s workaround, but my understanding is that when you tap the playback buttons, the Soor app launches for a fraction of a second and instantly “crashes” back to the Home Screen, tricking you into thinking the widget is interactive. You can tell this is what happens under the hood if you pay close attention to the animation of the widget when you tap buttons – you can see the widget tries to open Soor for a split second, then stops. This is a clever hack, and it’d be nice to see other developers implement it as well.
The ability to customize Soor’s Favorites widget is also new in the app’s latest update. I configured this widget to show me four specific playlists I find myself shuffling on a regular basis: Best of 2020, Family, Favorites Mix, and New Music Mix. To do this, I first configured the Music Collection widget to use ‘Favorites’ as a collection type and disabled the ‘Artwork Only’ and ‘Open In Apple Music’ options since I want to see playlist names and open them in Soor. Then, in Soor’s Settings under the Widgets section, I picked the four items I wanted to see in the medium-size widget. The beauty of this approach is in how Soor lets you pick anything from your library or Apple Music and turn them into quick launchers for the widget; you can even save a specific Apple Music search as a launcher for the widget or use a ‘For You’ section as source. I still can’t believe Apple didn’t create a similar widget for their own Music app in iOS 14.
Lastly, I want to mention magic mixes. Those who have been reading my stories and listening to my shows over the past few years know how much I’d love to see smart playlists become available in the Music app for iPhone and iPad. The lack of smart playlists on iOS and iPadOS is one of the many reasons why I created MusicBot with support for smart mixes last year. With Soor, however, I’ve found a suitable alternative to smart playlists thanks to the ability to assemble dynamic mixes that fetch songs from specific sources in my library, apply filtering criteria, and shuffle them.
I’ve created four magic mixes in Soor, which are now pinned to the widget: Genius Mix, Death Cab for Cutie Shuffled, My Chemical Romance Shuffled, and Oasis Shuffled. The last three are pretty self-explanatory: they take any song from those artists, limit the results to 30 songs, and start playing them on shuffle. As you can see in the screenshot below, I used every album from those artists as the source instead of creating a filter such as “Source: Library – Artist: Oasis”. This is one of the limitations of Soor’s magic mixes: in my tests, picking your entire library as the source caused massive delays in the execution of the magic mix (which is generated on the fly every time you tap it); it’s much faster to pick a subset of sources (such as multiple albums or playlists) and filter those instead.
I applied the same technique to the Genius Mix, where I tried to replicate the namesake functionality from my MusicBot shortcut. The goal of this mix is to give me something to listen to I’d probably like even if it isn’t necessarily a recent music release. Here’s how I set it up in Soor:
- For sources, I picked a variety of playlists, including my annual ‘Best Of’ ones, Apple’s Replay playlists, and my saved Shazam tracks;
- I set the Play Count filter to “more than three”;
- I configured the Last Played filter to fetch tracks I’ve played at least once in the past three years;
- I excluded songs shorter than 60 seconds, since I don’t want interludes to end up in the mix;
- Lastly, I set the playback mode to shuffled and limited the mix to 50 songs.
Now, every time I tap the Genius Mix button in the Soor widget, a random selection of songs I love starts playing within a couple seconds in the background. The currently playing item and queue is instantly reflected in the Now Playing widget, which is just one swipe away in the stack. And if I don’t like the songs fetched by the Genius Mix, I can just tap it again and let it create a new selection for me.
Over the years, I’ve always resisted the idea of using third-party Apple Music clients because I like the Music app and want to make sure I can access all of the service’s latest features. I’m making an exception for Soor’s iOS 14 update: its widgets pack incredible utility into a compact design, and the combination of magic mixes and widgets is the replacement for iTunes-inspired smart playlists I didn’t know I needed. Hopefully, an iPad version of Soor will be coming next.