podverse-rn icon indicating copy to clipboard operation
podverse-rn copied to clipboard

Add Android Auto support

Open GilOliveira opened this issue 3 years ago • 12 comments

Is your feature request related to a problem? Please describe. It's not really safe to handle your phone while driving, that's why loads of vehicles these days have support for Apple CarPlay, which provides a driver-friendly interface. Even though you have access to basic commands like play/pause and skip while driving, you can't really select which episode to listen to while driving without handling your phone.

Describe the solution you'd like The solution that most other podcasting apps (like Apple Podcasts) use, is to provide a CarPlay app which allows the user, among other things, to browse their library, select the episodes/playlists they'd like to listen to, skip to chapters... All in a simple interface that is unobtrusive to navigate while driving.

Additional context Not really familiar with React Native, but as far as I'm aware there's an npm package that handles CarPlay support in React Native.

GilOliveira avatar May 28 '22 21:05 GilOliveira

I similarly would love to see Android Auto added. This is the one feature holding me back from using this as my podcast app. I've found the npm package for Android Auto if it's helpful.

jacob-swenson avatar Jul 05 '22 19:07 jacob-swenson

@jacob-swenson my understanding is that Android Auto package would not work side-by-side with the react-native-track-player library the whole app relies on currently...I don't think we have an option but to add Android Auto and CarPlay to react-native-track-player ourselves, as it's a lot of work and the RNTP devs don't expect to work on it anytime soon.

Android Auto and CarPlay are by far our most popular requests. The only thing holding us back is it's a huge feature to add, but it's high on our list of priorities.

mitchdowney avatar Jul 15 '22 22:07 mitchdowney

Going to consolidate discussion on this issue to just Android Auto.

For Apple CarPlay discussion we can use https://github.com/podverse/podverse-rn/issues/1106

Update: ugh, I did this backwards. Should have made this one Apple CarPlay 🤦‍♂️ sorry

mitchdowney avatar Jul 21 '22 02:07 mitchdowney

So is this the Android Auto discussion or Carplay? I agree that I can't (won't?) use a podcast app with no Android Auto support.

puck2 avatar Jun 25 '23 22:06 puck2

@puck2 this issue is for Android Auto. Realistically our core open source dev team (3 people with day jobs and not a lot of Android experience) will not be able to get this done on our own. I'm looking into if we can possibly pay someone a bounty to put together an Android Auto version for us. We don't have much of a budget as an open source project without paid devs...but it pains me we don't have Android Auto support, or a near-term path to delivering it. Hopefully someone is up for doing the work for a bounty contract that is affordable for us.

mitchdowney avatar Jun 25 '23 22:06 mitchdowney

Thanks for explaining. For now I need Android Auto but will keep an eye on the project.

puck2 avatar Jun 26 '23 01:06 puck2

I was just thinking about this, and found this issue. So I did a quick search and found an RN library for this: https://github.com/Shopify/react-native-android-auto

I might play around with adding this, but I'm not an RN dev. cc @mitchdowney

rebootd avatar Aug 01 '23 16:08 rebootd

@rebootd awesome! Please let us know if you have any questions. @kreonjr and I would be happy to help how we can.

Also...we had looked at the react-native-android-auto app previously, but it has not been updated for a couple years, and we decided not to go with it. A good first step I think would just be trying to get Android Auto working with Podverse in a local dev environment, without any of the Podverse related data or functionality.

Tbh I do not know the first thing about how to develop for Android Auto...can it run in an emulator? If there is a defined workflow I may be able to start chipping in on / learning Java.

mitchdowney avatar Aug 01 '23 20:08 mitchdowney

Hey guys: We are also currently working on Android Auto support for a react native app and found this merge request in RNTP quite promising: https://github.com/doublesymmetry/react-native-track-player/pull/2094 Maybe you also want to have a look and add some support?

DanielKuhn avatar Aug 23 '23 14:08 DanielKuhn

@DanielKuhn oh wow, I missed this one. Thanks for the heads up!

mitchdowney avatar Aug 24 '23 02:08 mitchdowney

my RNTP PR might actually address all requirements of your bounty:D I think porting my PR to your RNTP repo will immediately enable synced media control in AA, then it's a simple matter of writing up the content hierarchy and playback handler as outlined. If youd like to collaborate I can see how well it integrates and possibly push PR to be approved.

lovegaoshi avatar Aug 26 '23 16:08 lovegaoshi

Ohhh very exciting! I just went ahead and assigned the Android Auto bounty to you to reserve it.

https://github.com/podverse/podverse-ops/blob/master/bounties/mobile-android/android-auto-app.md

I also assigned this Github issue to you. I'm not totally sure how I should proceed from here. If you have questions or need to screenshare or anything, please lmk. Also if you want the bounty unassigned from you no problem.

mitchdowney avatar Aug 27 '23 20:08 mitchdowney