NewPipe 0.28.0 brings support for Android Auto

post image

This version brings support for Android Auto integration and allows you to add feed groups as a tab on the main page. Multiple improvements and fixes to the YouTube and SoundCloud implementations were made, and progress on the refactor continues steadily. Oh, and you can meet the team at FrOSCon!

Highlights

Android Auto integration

Thanks to the joint effort of many contributors and a lot of patience, we are happy to announce: NewPipe now integrates nicely with Android Auto! No more boring rides for you - choose music or podcasts to listen to directly from your car’s interface!

More specifically, the car integration allows you to access and play streams from your history and from your local and remote bookmarked playlists, search YouTube or any other service you have currently selected in NewPipe, and control the player including the playing queue. Make sure to only use those features when it’s safe, to avoid getting distracted.

Want to check it out? Learn how to install NewPipe on your car’s infotainment system here.

Player

Queue

Home (bookmarked playlists)

Home (history)

A local playlist

Search screen


The story of this feature begins back in 2022, on 25th of December to be exact. On this day @haggaie opened a Pull Request on GitHub promising to add support for Android Auto. After multiple rounds of reviews, testing by different people with different cars, finding and fixing bugs, the player was refactored almost completely on our main development branch which made many of the changes incompatible. Even though @haggaie was left a long time without reviews and feedback, he switly answered and took up the work once our team finally had time to work on his PR. We really let him wait more time than we should have. The team gladly appreciates his patience with us ❤️. After updating the code base, @Stypox took over the development of the Android Auto integration because he was more familiar with the new player structure and finished the work begun by @haggaie in Feburary 2025. The Android Auto integration required complex changes to our internal player code. After even more rounds of reviewing, testing, and bug fixing, the PR was finally merged in March. Thanks to the nightly builds a broad range of users tested the feature on their phones and cars, which led to more critical bugs being fixed before ending up in a release. We want to thank everyone involved in this!

Other highlights

Adding a feed group tab

This release is not all about cars and what you can do with them. It comes with more improvements and fixes.

You can add feed groups as main screen tabs to directly access your personalized and grouped feeds. This can be done from the Settings > Content > Content of main page option by adding a Channel group page item. This feature was introduced by @dev-victoria who opened their first PR on GitHub and contributed two other fixes to this version as well. Thank you!

@AudricV added a bunch of new YouTube kiosks to the app’s drawer, changed the default kiosk to “Live” after looking at the results of a community poll, and added a message that explains this change when you first open the app in the new release. The default kiosk had to be changed because the previous defualt kiosk, “Trending”, was dismissed by YouTube (although it’s still working for now). Thank you for your meticulous work!

In this release the SoundCloud implementation got some love, thanks to the contributors involved! Most notably, @watermelon42 added support for extracting and displaying content that is liked by an artist or user as a new “Likes” tab in the channel page. @AudricV then added support for AAC 160k streams. @TobiGr removed the now-defunct “Top 50” kiosk, and if you had it among your main page tabs, you will get an alert dialog explaining that it was removed. On a separate note, we are aware that there are frequent player crashes when playing long SoundCloud tracks, and @davidasunmo is already working on a fix, though it couldn’t make it into this release.

@tfga added a button to share a local playlist as a YouTube temporary playlist. Nice, thanks!

A few improvements were made to make the UI more user-friendly: @Profpatsch added a hint in the search bar explaining which service you are currently on, and @malania02 added a label to downloaded items that shows their download date. Thanks to both!

Translation and Localization

With this release, 68 locales received updates and 15 new locales were added to NewPipe.

In addition to the in-app language chooser, you can now use the Android per-app language setting from the system’s app info page. This is a feature which was introduced with Android 13 and is now supported by NewPipe due to neat work by @mileskrell. The existing in-app preference is automatically migrated to use Android’s per-app language setting. Let us know if you encounter any problem with this new setup, such as missing languages.

In other localization related news, @VougJo23 fixed a visual bug which resulted in RTL usernames of comment authors not being displayed correctly next to LTR timestamps, and @mileskrell included the locale country when selecting the audio track in the player for better disambiguation.

Bug fixes

As usual with every release, we do not only introduce new bugs you can run into, but also fix some. Here is a list of the most notable ones:

  • The text in the dark theme is now back to being white, thanks to a workaround around an Android system bug found by @Thompson3142… except that is was already seemingly fixed in 0.27.7? This bug was caused by the WebView used to solve YouTube integrity checks since 0.27.6, however in 0.27.7 we temporarily switched to a different method to get YouTube data that does not require integrity tokens. In 0.28.0 the bug is now solved for real anyway.
  • @AudricV, @litetex and @Stypox solved various YouTube annoyances caused by recent changes made by the service:
    • playlists not loading more than 100 items
    • recommendations not appearing below videos
    • search sometimes not showing any results
    • podcasts not appearing anywhere
    • playlists of shorts appearing as empty
    • searching for YouTube Music albums or playlists resulting in errors and incorrect information
  • Did you also get strange UI crashes in the History page, for example when deleting entries? This was a longstanding bug with an unknown cause, until our hero @j-haldane killed the monster fixed it for good!
  • @Isira-Seneviratne fixed the grouping-by-channel of new streams notifications when a video has a different uploader URL than the channel that was fetched. Thanks!
  • @har-123 noticed that the three-dot menu items in the channel page were multiplying like rabbits when no one was looking, and fixed their sneaky duplication. Cool!
  • @AndrianaBilali fixed timestamps not being clickable when viewing the main comment of a comment replies thread. Thanks!
  • @koukibadr, @TobiGr and @Stypox fixed a UI crash in the search screen when the next page can’t be extracted (now in such cases the proper error snackbar is shown instead). Thank you!

Progress on the refactor

NewPipe-side

As explained in previous blogpost, the refactor is currently happening on the refactor branch of the NewPipe repository. This GitHub Project tracks the progress, which has been steady since the updates provided in the previous blogpost.

@Profpatsch made some progress on the integration between NewPipe and NewPlayer under a contract by NewPipe e.V.: in particular, he migrated most of the player and of the video detail screen from Java to Kotlin, while maintaining functionality intact. @Stypox assited to finalize his work, so thanks to both!

@SttApollo refactored the empty state view used throughout the app to follow Jetpack Compose best practices. See updated screenshots here, thanks for the effort!

@Isira-Seneviratne rewrote the subscriptions import/export so that it uses coroutines, implemented the equals and hashCode contracts for PlayQueue and PlayQueueItem, converted the play queue classes to Kotlin, fixed an issue with importing/exporting the database by migrating the .zip database import/export to use Path, and generally kept the refactor branch up-to-date by regularly merging bug fixes and improvments from the dev branch. Thanks for the constant maintenance!

@snaik20 reviewed refactor PRs alongside @Isira-Seneviratne, big thanks to both of them for taking up that mission! @Stypox and @Profpatsch also helped from time to time. Please keep it up!

NewPlayer-side

NewPlayer's seek chapter title preview

NewPlayer's updated audio UI and audio queue

@lm41 introduced seek chapter title preview in this sleek PR, see the following screenshot:

@nicholasala added tests for NewPlayer here, and @crazo7924 provided a small fix to make them run on the CI. Those tests will help making sure future versions of NewPipe will have less bugs! If you want to chip in and write more tests, you’d be very welcome!

@crazo7924 improved the audio UI by shifting the title upwards in landscape as you can see here, and @theScrabi returned from his busy schedule to add a better audio queue UI in this PR. Very cool!

Onto less visible changes, @Profpatsch made it easy to find an activity everywhere and implemented sorting as comparator in StreamTrack, @tinyboxvk fixed some typos, and @crazo7924 fixed a bug to correctly handle auto brightness. Thanks even for the invisible yet important changes!

Meet us at FrOSCon!

The NewPipe e.V. is paying for the attendance of some TeamNewPipe members to FrOSCon, a free software conference happening on the 16th and 17th of August in Sankt Augustin, Germany. Come and visit us at our booth, and get some stickers and flyers!

Wanna Contribute?

If you like the app enough to want to make it even better, or you noticed some glaring error that you can’t help but want to fix, you can read our contribution guidelines and do a Fix-It Felix.

Or, if you’re bilingual (or even multilingual), you could help translate the app.

Feature additions to the old codebase have been put on hold for now. We’re pretty swamped as it is, and are working to clear our large (and critical) backlog first. Our next priority is to finish the rewrite of the codebase. We are making progress - slowly, but steadily - and you can help out on that too (and learn modern Android development practices along the way).

Downloads

NewPipe notifies you about new versions. You can download them when you tap the notification, which will take you to the GitHub Releases page.

If you use the F-Droid app, it, too, notifies you about updates for NewPipe. Please keep in mind that it can take F-Droid a while to update their repository. If you have problems installing the update, you may need to uninstall NewPipe and then install it afresh. (Make sure to back up your data by exporting your database from the Settings > Backup and restore menu.)

If you have already installed NewPipe from F-Droid’s repository, to get this version of NewPipe you can do one of the following:

Note: If you have installed NewPipe from GitHub Releases, you will not have to uninstall it to switch to our custom repo. Just let it update your current version. Make sure you back up your data as mentioned in the warning at the top of the FAQ page!

Bugs and Support

Now that you’ve (hopefully) updated, please let us know what your experience of the latest release is, especially bugs in need of fixing. As usual, you can reach out to us via Matrix #newpipe:matrix.newpipe-ev.de or open issues on GitHub.

If you have any other questions, feel free to post them in the comments here, and someone will reply to you. Also, thanks for reading it until the end! We put quite some time into these blog posts; you reading through it is greatly appreciated :)

Let us know what you think!

Please read our rules before leaving a comment!

→ Feature requests or bug reports need to be reported on GitHub! ←