I loved a Pebble app that stopped working. It needed a paid app (quite cheap) for my iPhone, so I could see in FULL COLOR (!) the cover art of the music playing in my iPhone (Apple Music included). It also had controls to stop, f-forward, etc.
It was a delight! (Apart from being BEAUTIFUL, it was very convenient: I could see and control music easily, while driving, or while walking, without reaching my iPhone. That was BIG!).
Could anyone PLEASE, PLEASE, bring back such a wonderful app???
In regards to displaying cover art (music controls are already there), I asked Claude about it, and was a bit surprised at the answer. Note: This is just an LLM replying, so validating this response would be the next step.
Is there an API on iOS for apps to read in the cover art for music that is currently playing?
Yes — Apple provides this through the MediaPlayer framework, specifically MPNowPlayingInfoCenter and MPMediaItem.
For music in your own app, you can get artwork via MPMediaItem.artwork, which returns an MPMediaItemArtwork object. You call image(at:) on it to get a UIImage at a desired size.
For whatever is currently playing system-wide (including Apple Music or other apps), you can read from MPNowPlayingInfoCenter.default().nowPlayingInfo. This dictionary may contain the key MPMediaItemPropertyArtwork, which again gives you an MPMediaItemArtwork object.
The catch with the system-wide approach is that not all apps populate the artwork field in nowPlayingInfo, so it’s not guaranteed to be present. Apple Music generally does include it, but third-party apps vary.
There’s also MusicKit (introduced in iOS 15), Apple’s higher-level framework specifically for Apple Music. It gives you structured access to Artwork objects with URLs you can load images from, which is a cleaner API if you’re only targeting Apple Music content.
So in summary: yes, it’s well-supported, with MPNowPlayingInfoCenter being the general-purpose route and MusicKit being the more modern option for Apple Music specifically.
This would have to be supported by the Pebble Core app, directly. As cool as it would be, I would imagine that it would need to be pretty low on the priority list.