如何检测硬件按键敲击?

Ama*_*tra 5 flutter

我现在需要检测是否有任何硬件按钮在 flutter 应用程序处于前台或打开时被按下。*

例如,当有人按下音量或其他按钮(即使是关机按钮)时,我想在我的应用程序中执行某些操作。

我知道当 Flutter 应用程序打开并且我正在查看应用程序日志时,我点击了任何硬件按钮,与该点击相关的 lops 会打印在日志中。

就像我按下 Vol down Key Down Tap 检测到的相关日志打印在日志中一样。

当执行上述任何指定操作时,我如何执行功能?

小智 6

几天前发布了名为Hardware Buttons 的新插件。

它支持音量按钮事件和电源按钮事件,这似乎符合您的需要。

也许试试这个?


use*_*442 4

您需要找到合适的 flutter 包才能执行此操作。

任何系统级调用都需要使用平台通道api

https://flutter.io/platform-channels/

这是存储库

https://pub.dartlang.org/flutter/

这是方法通道的示例。

https://github.com/flutter/plugins/blob/master/packages/device_info/lib/device_info.dart

这是流侦听器的示例。

https://github.com/flutter/plugins/tree/master/packages/sensors

当我尝试抓取麦克风片段时,流监听器并没有得到很好的记录。