Jump to content

Poweramp stopped running automatically via Bixby routines


thed0g12345
 Share

Recommended Posts

Hello,

seems that running Poweramp to Play Music via Bixby routine when connected to a BT device is broken since the last Samsung A50 update.

 

  • Poweramp build number (available in Poweramp Settings / About) : v3build 882 arm64-play [882004-437be2ab]
  • your device model : Samsung A50 - SM-A505FN
  • your Android version: Android 10
  • steps to reproduce:

Create a Bixby routine: IF Connected to BT Device, THEN Open an App (Poweramp Play).

When connected to the configured BT device, the phone is automatically connected, but doesn't start Poweramp and play music unless the phone is unlocked. That wasn't the case before, since the Poweramp started while phone wasn't turned on or unlocked. I've tried with other Music Players (Phonograph, Pulsar, Black player) and it's fine there, (they have older builds) so it must be something that's changed in Poweramp.

 

I tried the Keep alive and Wakelock option and it was the same.

Link to comment
Share on other sites

Ok, I did some testing today. I exported the configuration and uninstalled Poweramp, then installed previous 3 builds from apkmirror. The behaviour was unchanged, Poweramp doesn't start unless phone is unlocked. Every other Music player starts normally.

 

Can this please be addressed, I really don't want to switch music player apps, specially after the ****up with scoped storage and reading .m3u playlists which just works on Poweramp.

Link to comment
Share on other sites

Ok, did some more testing. It seems that it doesn't play music automatically without unlocking the phone when using the "Open app" action:

770179837_Screenshot_20200914-141620_BixbyRoutines(Small).thumb.png.f254300c41ceaa1ff4aef61ab7193d4c.png

I used the "Open app" action before with Poweramp, because it has the "Play" intent, which was working fine:

1719137368_Screenshot_20200914-141637_BixbyRoutines(Small).thumb.png.faf642588e34f5d6f143b409eeb5e87a.png

But now it seems that using that "Open app" action, it doesn't start anymore, I tested with other music player apps and it was the same. But when using the "Play music" action:

677726042_Screenshot_20200914-141718_BixbyRoutines(Small).thumb.png.579dc12dbd57c93c0e3002a414ea3189.png

The Poweramp "PSMediaButtonReceiver" doesn't do anything (or maybe I didn't configure it in the app), while for other music player apps this action works as intended - upon connecting to configured BT device Bixby routine starts the "Play music" intent with configured app and it plays without unlocking.

Would it be possible to implement this "Play music" action with Poweramp?

Link to comment
Share on other sites

Doesn't seem to be the same version of the Bixby routines, based on the "Open an app or do an app action" caption, which is different in my version.

But this made me think and I checked the Bixby Routines app version in App Settings, to which it indicated there's an update available. After the update (2.6.25.6) I got it working again with the "Play" Action just like before, seems Samsung changed some stuff around.

Thanks for your help :)

Link to comment
Share on other sites

  • 10 months later...
Posted (edited)

Hi, sorry to reopen this, but I've recently wanted to use Poweramp again for the same scenario, but have issues. I'm on the same phone (A50), running Android 11, my use case is wanting to start music playback on a locked device (fingerprint and PIN) after detecting the BT Device in my car (Roidmi 2s).

Poweramp Full version: build-905-arm64-play [905004-96b6d050]

Bixby Routines: 3.1.16.6

Android: A505FXXU8CUE3

 

First of all, I have a question:

what is the difference between Poweramps "PSMediaButtonReceiver" and the other Actions under Bixby Routines - Play Music action (list in attachment)?

Because when phone is locked, I have issues with Poweramp automatically starting playback using this Action, although using other apps Action under this same Menu starts playing music more reliably. For instance, Samsungs Music Player Action always started the media playback.

If only this "PSMediaButtonReceiver" is selected, it doesn't play music from locked phone at all. If I unlock the phone prior Bixby routine running, then it plays. A workaround I found is to make an additional action first "Open an app", which opens Poweramp, then triggers the "Play music" action. This works, but if Poweramp wasn't use in a day (for instance I sit in the car after a day), I still need to unlock phone, then press Play (Poweramp does open though). It looks like a race condition, where app isn't opened, so the PSMediaButtonReceiver Action goes empty. If I get out of the car (for instance to the store) then come back, it plays automatically (probably because Poweramp is still running or is in cache). 

Mind you that I tested this behaviour with BT Headphones, where it worked more reliably and also without the workaround of having to run the "Open app" action to open Poweramp before. Does this perhaps has to do that the "PSMediaButtonReceiver" action is more better utilized and meant to be for headphones with buttons?

Screenshot_20210720-194133_Bixby Routines.png

Screenshot_20210720-193950_Bixby Routines.png

Edited by thed0g12345
Link to comment
Share on other sites

This topic taught me about the history of Media button events:

First of all, I have the Google app disabled on my phone, so I can exclude Google Assistant messing about when phone is locked. I've tried listing the last events today, when I sat in the car and the music started playing automatically:

==================
08:57:35.662 BTReceiver headset event
connection BT=true am mode=0 Roidmi Music Blue C
==================
08:57:37.542 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_DOWN name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=170559684 A2dpOn  isAvrcp  flags=0x0 playerState=2
==================
08:57:37.562 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_UP name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=170559705 A2dpOn  isAvrcp  flags=0x0 playerState=2
==================
08:57:37.854 PlayerService RESUME
from PSMediaButtonReceiver resumePlaying 
==================
08:57:37.893 PlayerService RESUME
from PSMediaButtonReceiver IGNORED

I went to the store, then when I came back, the music didn't start playing automatically upon playing (it might have been the issue, because the Poweramp was on the Last events screen):

==================
08:57:35.662 BTReceiver headset event
connection BT=true am mode=0 Roidmi Music Blue C
==================
08:57:37.542 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_DOWN name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=170559684 A2dpOn  isAvrcp  flags=0x0 playerState=2
==================
08:57:37.562 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_UP name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=170559705 A2dpOn  isAvrcp  flags=0x0 playerState=2
==================
08:57:37.854 PlayerService RESUME
from PSMediaButtonReceiver resumePlaying 
==================
08:57:37.893 PlayerService RESUME
from PSMediaButtonReceiver IGNORED
==================
09:02:25.266 HeadsetPlugReceiver headset event
disconnection BT=false am mode=0 no_keep_notif_on_dscn=false
==================
09:02:25.272 HeadsetPlugReceiver cmd_player_pause_playing
==================
09:02:25.811 BTReceiver headset event
disconnection BT=true am mode=0 Roidmi Music Blue C no_keep_notif_on_dscn=false
==================
09:02:29.304 PlayerService onRoutingChanged
newDevice=speaker oldDevice=bt
==================
09:02:29.306 PlayerService reloadPipeline
 allowPlaying=false forceResume=false state after reload=2
==================
09:10:16.529 BTReceiver headset event
connection BT=true am mode=0 Roidmi Music Blue C
==================
09:10:19.252 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_DOWN name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=171014185 A2dpOn  isAvrcp  IGNORED lastRouteTimeDiff=lastRouteTimeDiff
==================
09:10:19.264 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_UP name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=171014199 A2dpOn  isAvrcp  IGNORED lastRouteTimeDiff=lastRouteTimeDiff

Maybe this can help with the problem.

Link to comment
Share on other sites

Will also try the recent beta from Sunday, if there are any changes.

I'd like to add to my previous question regarding "PSMediaButtonReceiver" - what's the difference between this and the "Open an app or do an app action" - Poweramp/Play?

Link to comment
Share on other sites

Did some more testing with build 909 beta. Now it ran without the "workaround" of opening the Poweramp before in the Routines, then invoking the "PSMediaButtonReceiver", but I suspected because the player was already in cache in bg. That was a step forward.

Keys log:

==================
12:41:49.687 BTReceiver headset event
connection BT=true am mode=0 Roidmi Music Blue C
==================
12:41:51.947 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_DOWN name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=174564702 sourcePak=null A2dpOn  isAvrcp  flags=0x0 playerState=0
==================
12:41:51.972 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_UP name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=174564728 sourcePak=null A2dpOn  isAvrcp  flags=0x0 playerState=0
==================
12:41:52.697 PlayerService RESUME
from PSMediaButtonReceiver resumePlaying 
==================
12:41:52.697 PlayerService RESUME
from PSMediaButtonReceiver IGNORED

App debug log: attached, filename appdebugbeforereboot.txt

When I rebooted the phone and started the same Routine, it wasn't running when locked. When I unlocked the phone, run Poweramp and send the Log to myself and saved the last media button pressed log, it started playing after a while.

That were the last pressed keys:

==================
12:46:13.322 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_DOWN name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=168775 sourcePak=null A2dpOn  isAvrcp  flags=0x0 playerState=2
==================
12:46:13.335 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON
KEYCODE_MEDIA_PLAY ACTION_UP name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=168789 sourcePak=null A2dpOn  isAvrcp  flags=0x0 playerState=2
==================
12:46:13.352 PlayerService RESUME
from PSMediaButtonReceiver resumePlaying 
==================
12:46:13.357 PlayerService RESUME
from PSMediaButtonReceiver IGNORED

App debug log: attached, filename appdebugafterreboot.txt

 

Using the "Play" Intent action in Bixby Routines, still didn't start playing music in the 909 beta when phone locked, so basically only "PSMediaButtonReceiver" does "something".

appdebugafterreboot.txt appdebugbeforereboot.txt

Link to comment
Share on other sites

  • andrewilley changed the title to Poweramp stopped running automatically via Bixby routines

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...