Android在哪里解释媒体按钮?
Android在何处将物理媒体按钮(耳机电缆中)转换为逻辑操作(如下一步、停止、语音查询) 是否有办法更改此任务(即从中创建其他操作) 注意:我试图安装一个MediaButtonReceiver。但它只看到被解释的键。所以我只看到按键,在按键被释放得足够早而不会触发语音查询之后 更新:只要我的应用程序在前台,我就会在onDispatchKeyEvent中看到我需要的原始密钥事件。但是,当锁屏处于活动状态时,如何获取它们Android在哪里解释媒体按钮?,android,android-mediaplayer,Android,Android Mediaplayer,Android在何处将物理媒体按钮(耳机电缆中)转换为逻辑操作(如下一步、停止、语音查询) 是否有办法更改此任务(即从中创建其他操作) 注意:我试图安装一个MediaButtonReceiver。但它只看到被解释的键。所以我只看到按键,在按键被释放得足够早而不会触发语音查询之后 更新:只要我的应用程序在前台,我就会在onDispatchKeyEvent中看到我需要的原始密钥事件。但是,当锁屏处于活动状态时,如何获取它们 MediaButtonReceiver在应用程序处于后台时会被调用(但只有在
MediaButtonReceiver在应用程序处于后台时会被调用(但只有在按键被释放后才会被调用)。在应用程序开始播放任何音频之前,它应该保持它将使用的流的音频焦点。这是通过调用requestAudioFocus()完成的,如果请求成功,它将返回AUDIOFOCUS\u REQUEST\u 您必须指定您正在使用的流,以及您希望使用的是瞬时音频焦点还是永久音频焦点
// Request audio focus for playback
int result = am.requestAudioFocus(afChangeListener,
// Use the music stream.
AudioManager.STREAM_MUSIC,
// Request permanent focus.
AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK);
if (result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
// Start playback.
}
查看更多信息
要在应用程序中使用实时事件,RTP是一个不错的选择。它为RTP(实时传输协议)和管理按需或交互式数据流的应用程序提供API 问题依然存在。我只看到短按键,当按钮已被释放(与按键释放一起)时发送给我。它们包含时间戳,但我需要实时的事件。我看不出RTPAPI如何为媒体按钮提供新的访问权限。你有一个例子吗?