检测反应本机中的媒体按钮按下



如何在 react-native 中检测媒体按钮按下(在耳塞、自拍杆上,..(?

我尝试了许多库和解决方案,但它们都失败了。我得到的最接近的解决方案来自一个名为react-native-incall-manager的库。 这最初是为了在通话期间提供更多控制,但它们也带来了检测某些事件的选项。其中一些事件有效,例如检测音频插孔是插入还是拔出。我需要的那个,媒体按钮事件,不起作用。物理按钮有效,只是不适用于我正在开发的应用程序。

这有效:

import InCallManager from 'react-native-incall-manager';
import {DeviceEventEmitter} from 'react-native'
DeviceEventEmitter.addListener('WiredHeadset', function (data) {
console.log('detected');
});

这不会:

import InCallManager from 'react-native-incall-manager';
import {DeviceEventEmitter} from 'react-native'
DeviceEventEmitter.addListener('MediaButton', function (data) {
console.log('button pressed');
});

如果我缺少一个明显的解决方案,我很想听听。

我已经找到了答案。 这个库修复了它:https://github.com/kevinejohn/react-native-keyevent

它目前仅适用于安卓。

最新更新