我正在制作一个呼叫应用程序,用户可以使用或不使用耳机/耳麦。在传入的视频通话中,我正在使用
react-native-incall-manager
来打开扬声器/允许扬声器电话。基本的
InCallManager.start({ media: 'video' });
方法可以工作,并允许检测正在插入的新音频设备,如耳机,如果发生这种情况,插入的耳机和麦克风就会如期工作。
问题出现在呼叫开始前耳机已经插在设备上的情况下,因为
InCallManager.setSpeakerphoneOn(true);
方法在那时被调用。替换代码0】不考虑已经连接的设备,耳机不工作,正常的扬声器工作,即使耳机被插入。
react-native-incall-manager
推荐使用 react-native 中的
DeviceEventEmitter
来检测本地事件,如连接的音频设备的变化。
废弃的
.
这里建议使用
NativeEventEmitter
,但这似乎非常复杂,似乎需要编写本地Java(Android)模块并与之配合使用。
如何在React Native中检测Android中连接的音频设备的变化?