Handle HEADSETHOOK
as 'play' in MediaButtonReceiver.onReceive
Issue: androidx/media#1581 #cherrypick PiperOrigin-RevId: 662515428
This commit is contained in:
parent
2d527b08c3
commit
c48c051ce2
@ -100,6 +100,10 @@
|
|||||||
action, as
|
action, as
|
||||||
[documented](https://developer.android.com/reference/androidx/media3/session/MediaSession#media-key-events-mapping)
|
[documented](https://developer.android.com/reference/androidx/media3/session/MediaSession#media-key-events-mapping)
|
||||||
([#1493](https://github.com/androidx/media/issues/1493)).
|
([#1493](https://github.com/androidx/media/issues/1493)).
|
||||||
|
* Handle `KEYCODE_HEADSETHOOK` as a 'play' command in
|
||||||
|
`MediaButtonReceiver` when deciding whether to ignore it to avoid a
|
||||||
|
`ForegroundServiceDidNotStartInTimeException`
|
||||||
|
([#1581](https://github.com/google/ExoPlayer/issues/1581)).
|
||||||
* UI:
|
* UI:
|
||||||
* Downloads:
|
* Downloads:
|
||||||
* OkHttp Extension:
|
* OkHttp Extension:
|
||||||
|
@ -128,7 +128,8 @@ public class MediaButtonReceiver extends BroadcastReceiver {
|
|||||||
}
|
}
|
||||||
if (Util.SDK_INT >= 26) {
|
if (Util.SDK_INT >= 26) {
|
||||||
if (keyEvent.getKeyCode() != KeyEvent.KEYCODE_MEDIA_PLAY
|
if (keyEvent.getKeyCode() != KeyEvent.KEYCODE_MEDIA_PLAY
|
||||||
&& keyEvent.getKeyCode() != KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE) {
|
&& keyEvent.getKeyCode() != KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE
|
||||||
|
&& keyEvent.getKeyCode() != KeyEvent.KEYCODE_HEADSETHOOK) {
|
||||||
// Starting with Android 8 (API 26), the service must be started immediately in the
|
// Starting with Android 8 (API 26), the service must be started immediately in the
|
||||||
// foreground when being started. Also starting with Android 8, the system sends media
|
// foreground when being started. Also starting with Android 8, the system sends media
|
||||||
// button intents to this receiver only when the session is released or not active, meaning
|
// button intents to this receiver only when the session is released or not active, meaning
|
||||||
|
Loading…
x
Reference in New Issue
Block a user