Flutter:有没有办法处理耳机播放/暂停媒体按钮



对于我的一个附带项目(把它想象成对讲机的复制品(,我需要处理长按mediaPlayPause按钮的操作(这样你就可以边按按钮边说话(。我从一个原型开始,该原型基于flutter示例读取键盘输入,本质上显示了击键。(也尝试了逻辑应用程序(。

但是按钮(也没有音量增大/减小(没有显示。

有人能够捕获那些外部设备密钥吗?

您应该看看audio_service插件。它只需扩展一个独特的接口来监听播放/暂停/下一个/上一个等事件,就简化了实现

class MyAudioHandler extends BaseAudioHandler
with QueueHandler, // mix in default queue callback implementations
SeekHandler { // mix in default seek callback implementations

// The most common callbacks:
Future<void> play() async {
// All 'play' requests from all origins route to here. Implement this
// callback to start playing audio appropriate to your app. e.g. music.
}
Future<void> pause() async {}
Future<void> stop() async {}
Future<void> seek(Duration position) async {}
Future<void> skipToQueueItem(int i) async {}
}

问题是,不可能长按媒体按钮,因为这个操作被硬编码为操作系统本身的其他操作。

对于Android MediaButtonReceiver和iOS遥控器,都没有长按操作可收听。

最新更新