Update played status from other app

App version: 2.1.3 google play

I’m looking to write a tool to copy podcasts from AntennaPod’s storage over to the Samsung watch, play them there, and then return the “played-until” and/or “mark as played” status to the AP storage.

Has anyone already done this, and is the data store for the status of each podcast stable enough for me to get into? I’m happy writing a “plugin” for AP to do that, or just to read/write directly to the data.

Thanks!
kevin

Does Samsung not use Android? I believe AntennaPod already supports Android watches (not to download, but as a player interface, so to say). Also relevant for you: Wear OS app · Issue #4264 · AntennaPod/AntennaPod · GitHub

Thanks for the quick answer! My situation is identical to issue #4264.

I’m an experienced developer and would be happy to write a “stub” to allow a standalone watch app to at least interact with AntennaPod.

The use case would be as follows: You use AntennaPod as your “main” app, on your android phone. You can then open as “AntennaPodToWatch” app which can grab some subset of the episodes on the AntennaPod storage on the phone and push those episodes to the watch’s storage. Then you leave your phone and go do stuff, listening via the watch.

When you run AntennaPodToWatch later, any podcasts you’ve played on the watch have the ability to update the “played” status on AntennaPod.

I’m proposing AntennaPodToWatch (hopefully a different name) as a separate app; Samsung gives away pretty helpful tools for this. However, I’d be happy to write to write some kind of API to manage any changes to AntennaPod that would be required. (Or if someone else has already written something to do this, so much the better.)

Thanks!
kevin

1 Like

Great that you’re willing to contribute code! Do I understand correctly that the idea is to have a separate app that’s installed on the watch, that interacts with the main app (on the phone) via API? (Re the naming, I think it should be very clear it’s linked, so e.g. “AntennaPod for Watch” would be good I guess.)

I’ll let @ByteHamster judge the approach and tech stuff :slight_smile:

Such an app would have to be able to support and synchronize all the playback-related settings in AntennaPod, such as “Skip silence”, “Skip intro” or playback speed. I think maintaining a separate app will be a huge amount of work. It does not only need an initial implementation, but someone who commits to develop and support the app long-term. Not sure how viable that would be.

A couple options:

  1. A total of 3 separate apps: AntennaPod on the phone, WatchConnector on the phone, and AntennaPod For Watch on the watch. Watch connector’s job is merely to manage the transfer of material from AntennaPod to the watch.

  2. 2 separate apps: AntennaPod with watch-content-management included, on the phone, and AntennaPod for Watch on the watch.

There might be some issues with it actually being AntennaPod on the watch. I plan to use a bunch of platform/components provided by Samsung, and their license might not match with the AntennaPod license. (MIT, right?) In that case, I could just make an “API port” that goes with route #1 above to allow WatchConnector to talk to AntennaPod to see and deal with content, and then write the other 2 apps on my own.

Thoughts?

Thanks,
kevin

Actually, why use a “watch-content-management” system when AntennaPod for Watch can be used with synchronization? Okay, the settings will not be the same but it would then be a full-featured app.

The license was changed. Version 2.2.0 will be released under the GPL, hoping that it reduces the number of copycat applications.

Hmm, I think a generic Android Watch app would be better because it runs on all watches.

Well, the notion of using a full-featured podcast manager on a watch sounds like hell. I already don’t like using my phone for it, and I know that’s the best app there is.

As for Android - this all started because I have a Samsung watch running Tizen as opposed to Android. If someone else wants to do an android version, great, but I’m gonna focus on making my watch play stuff. :slight_smile:

2 Likes

Oh, and “why use a watch content managment” answer is pretty simple. The use case that seems to be assumed here is that i’m going to have my phone and my watch with me. I’m not – the whole purpose of the watch for me is to have something I can take to the gym or on a run, where I don’t want my phone begging to fall and break. I want to put 90 minutes’ worth of stuff on my watch and listen to it, then reconcile the stuff when I get home.

Just to highlight a point that didn’t seem to be discussed further: how do you feel about this @Kevin_Rusch? If the app is AntennaPod branded and gets traction, this is an important point.

That’s a good point. I might just go off and do my own port for it. I’ll get back to you in a few days on this. Thanks!
k

Oh, I didn’t realize that it’s a completely different system.

Actually, I think it would be pretty fun to have a plug-in system for AntennaPod. That way, external apps could “hook into” context menu creation and could therefore offer their own actions. It would probably be a lot of work to come up with such a system, though. From a technical perspective, plug-ins could be implemented with class loaders similar to this blog post.

1 Like

Yeah, and to me at least, the benefit of this would be that AntennaPod could be my go-to podcast player (it’s pretty great) but people on oddball devices could get access to the media library (without having to maintain the library, subscriptions, downloads, etc etc) and let AP manage things. But you could play an AntennaPod item on a different device that’s not android or is too small to actually do anything. (liike my watch!)

Would it be much work to make AP ready for ‘plugins’? I imagine support for the podcast:value tag could be implemented in another plug-in.

Yeah, that’s probably pretty much work. Also, plugins could mess up the database, so we need a way to enable/disable them, get user consent when installing, etc.

1 Like