Back in December 2013 I blogged about Community URI Schemes. In that post I pitched the idea of having a URI scheme that multiple apps would use following a standard protocol. Soon after posting a link to the blog on twitter I talked to Scott Lovegrove, and found there already was a community URI Scheme for Pocket apps, and Scott created a wonderful helper library, PocketWP, for any Pocket app to use.
Over the last few weeks I finally acted on my initial thoughts and took inspiration from the Pocket library to define a new URI Scheme and helper library for Podcast Apps, I present to you PodcastWP.
I worked on this library with help from the very talented developers of two wonderful podcast apps for Windows Phone: Mark Osborn of BringCast and Mark Monster of P|Cast. I wrote the first draft of the URI Schema and the initial version of the library and then got tons of great feedback on the scheme and help refining the library from both Marks. And now over the course of this week all 3 of our apps will be receiving updates to support the new URI scheme.
The library can be found on NuGet, just search for “PodcastWP”. If you want to use the app in your podcast app all you need to do is use the PodcastHelper library to check for the presence of the wp-podcast:// uri scheme in your UriMapper like so:
var action = PodcastHelper.RetrievePodcastAction(uri);
// Perform action in your app
return new Uri("MainPage.xaml", UriKind.Relative);
If you want to send commands to a Podcast app, such as requests to Play, Pause or Skip to the next or previous podcast, you can do so by using the same PodcastHelper class, like this:
And that’s it! I hope other apps decide to use the PodcastWP library, both podcast apps, and other dashboard apps like Car Dash. If you have any questions on how to use the library please leave a comment or reach out to me on twitter!