[Android Q&A, Help & Troubleshooting] nalott:
Hi.

I have almost no knowledge of Android development, sorry if the question is stupid or incorrectly formulated ;)

An application named Sygic (satellite navigation, "com.sygic.aura" on Google Play) has a bug/feature that it blocks ACTION_MEDIA_BUTTON. From the user's point of view, media buttons of external keyboard or software buttons wit appropriate actions assigned (play/pause, skip, previous track) don't work when the app is running (in foregroud or even background as a service). As far as I could determine, the app doesn't register any broadcast receiver listening to MEDIA_BUTTON intent (at least not in Android Manifest). It certainly doesn't implement any useful feature based on media button presses.

Analysis of logcat didn't help me much. Below I quote both versions of log when I press Play and then Pause.

1. Standard log (filtered relevant entries) with no Sygic running (result is fine - music starts and then stops playing):

W/AudioTrack( 530): AUDIO_OUTPUT_FLAG_FAST denied by client due to mismatching sample rate (48000 vs 44100)
W/AppOps ( 530): Bad call: specified package android under uid 10006 but it is really 1000
W/AppOps ( 530): Bad call: specified package android under uid 10006 but it is really 1000
W/DvcNeonEqualizer( 4304): Starting fixed point NEON optimized equalizer with DVC
I/MediaFocusControl( 530): Remote Control registerMediaButtonIntent() for PendingIntent{41fa16e8: PendingIntentRecord{41fa20a0 com.maxmpz.audioplayer broad
castIntent}}
I/HeadsetService( 786): Audio session removed: 77
I/HeadsetService( 786): Selected configuration: speaker
I/PlayerService( 4304): ACTION_API_COMMAND cmd=1
I/MediaFocusControl( 530): AudioFocus requestAudioFocus() from android.media.AudioManager@41c73190com.maxmpz.audioplayer.player.PlayerService$20@41ca80b8
I/MediaFocusControl( 530): Remote Control registerMediaButtonIntent() for PendingIntent{41f0a6b8: PendingIntentRecord{41fa20a0 com.maxmpz.audioplayer broad
castIntent}}
W/KeyguardUpdateMonitor( 650): Ignoring generation id 13 because it's not current
W/AudioTrack( 530): AUDIO_OUTPUT_FLAG_FAST denied by client due to mismatching sample rate (48000 vs 44100)
W/AppOps ( 530): Bad call: specified package android under uid 10006 but it is really 1000
I/PlayerService( 4304): ACTION_API_COMMAND cmd=1
W/AppOps ( 530): Bad call: specified package android under uid 10006 but it is really 1000
I/MediaFocusControl( 530): AudioFocus abandonAudioFocus() from android.media.AudioManager@41c73190com.maxmpz.audioplayer.player.PlayerService$20@41ca80b8
W/PlayerService( 4304): Poweramp Player Service leaves the scene

2. With Sygic on it say only (no real action is visibly done):

W/AudioTrack( 530): AUDIO_OUTPUT_FLAG_FAST denied by client due to mismatching sample rate (48000 vs 44100)
W/AppOps ( 530): Bad call: specified package android under uid 10006 but it is really 1000
W/AppOps ( 530): Bad call: specified package android under uid 10006 but it is really 1000

Other applications are working just fine.

The developer (Sygic) is not communicating at all with me. Is there any chance to help myself with that? Settings? Xposed module? Some utility to filter broadcast receivers?