Jump to content

Poweramp overrides bluetooth device controls when another app is in use


elucid8
Go to solution Solved by maxmp,

Recommended Posts

Poweramp build number (available in Poweramp Settings / About): 967-bundle-play

Your device model: Vivo Y12s

Your Android version: 11

Steps to reproduce:

Play music with Poweramp. Pause and cancel Poweramp (X button in notification). Open another app, start playing something. Now pause on the bluetooth device. Try playing next.

Instead of the current app to play, Poweramp ends up playing instead. Poweramp will always override other apps except it has been Force Stopped.

Link to comment
Share on other sites

This solves the problem, but now Poweramp dies (almost) immediately after a brief pause. Optimally it would:

1. Suspend all controls of media once another app has taken over media playback and kill the service (Keep Service could have an extra toggle to Always keep service, with the current behavior)

Is this approach reasonable? @maxmp

Edited by elucid8
Conciseness
Link to comment
Share on other sites

I have already done that, unfortunately.

From the start.

Keep service works, but it's too aggressive. You are completely right in saying that disabling Battery optimization is "the proper way", it's just that things aren't always ideal.

Edited by elucid8
Link to comment
Share on other sites

@elucid8 there are two known independent issues with this player priority. There can be more - but it may be quite hard and time consuming to investigate and understand what your issue exactly is due to the combination of Android bugs, OEM firmware bugs, and Poweramp advanced options.
 

Spoiler

One is introduced in Android 13 due to the Android bug causing Beep option sound to bring Poweramp to the top priority and force-keep Poweramp always there - on top of players list. It shouldn't happen and even shouldn't be allowed. This one can be worked around by disabling Beep option (and restarting Poweramp). Some user helped me to investigate this issue recently and workaround (not a fix, as we can't fix Android bugs) for it already added to the dev. builds.

Another one is the Keep Service option, which tries to keep Poweramp alive, always. Year ago this was a legacy option for old Androids, which didn't work on recent Androids anyway. Recently (like month ago), this option was changed to allow Keep Notification option also to keep the service on the newer Androids too. It works only with Keep Notification enabled. So that year old reddit post can't be about that recent change. This option still shouldn't cause the priority override you can experience.
By design, loaded Poweramp service keeps audio output created, but paused/stopped; and that may trigger some Android variants to send BT buttons to it. Usually this doesn't happen and it shouldn't happen, but may still happen for your firmware if it reacts this way to paused/stopped audio output.

You may try to change output types in Poweramp settings and tweak other options, but I would recommend allowing Poweramp to run in background with appropriate system settings (https://dontkillmyapp.com has good guides on this matter).

 

Link to comment
Share on other sites

Solved by a fresh reinstall of the app

EDIT: The issue still came back after some days. What follows is a hack that does work but requires Tasker, surprisingly it's eerily similar to the initial proposal for a solution that was dismissed. I'll post it soon.

Screenshot_20230905_194032.thumb.jpg.3c61d90f08b9df1043b9b8a05b53435f.jpg

 

Edited by elucid8
Updated information
Link to comment
Share on other sites

You'll need to grant Tasker (paid, 3rd party app) adb permissions via PC (search tutorials online) or with the LADB app (again, search tutorials for this)

It's a one-time thing, so I strongly recommend doing most or all of the permissions in the extensive list below so you don't ever have to worry about Tasker permissions. I've forgotten the exact one you need for this specific process, but you'll be reminded in the Tasker app

https://www.reddit.com/r/tasker/comments/e2mjzk/adb_additional_permissions_list/

Here's the task:
https://taskernet.com/shares/?user=AS35m8m6PdaeVocfnxwaBxRIYGws0vmj%2Bns010SyLgBwWCOHchmIhh3BULofUd7uSuOTDgy9AA%2Fkg0U%3D&id=Task%3AUnload+Poweramp

Under Profile tab, create a new profile, select 'Application' type, leave only the Services box marked, and select all the apps you don't want Poweramp overriding.

That's all.

Let's hope that when the dev has the time, he can implement this into the Poweramp, so no need for Tasker. Fingers crossed.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...