React native — воспроизведение пользовательского звука через ушной динамик

#javascript #react-native #audio

#javascript #react-native #Аудио

Вопрос:

Мой клиент спросил меня, можно ли воспроизводить звук на iPhone через ушной динамик. Воспроизведение может происходить только тогда, когда телефон находится на уровне уха пользователя (близость).

Я попробовал хорошо известный плагин react-native-incall-manager, но после некоторых экспериментов я не думаю, что это будет делать то, что я хочу.

Есть ли какие-либо плагины, которые могут делать то, что мне нужно?

Ответ №1:

Вы ищете react-native-proximity, вам, вероятно, также понадобится react-native-sound

Если вы хотите воспроизводить событие только во время вызова, вы можете отслеживать это на iOS с помощью callkit или поддерживать собственное состояние вызова в чем-то вроде redux. Псевдокод для меня был бы похож

 if in call and sound hasn't played: 
  proximityListener will call play sound
else 
  do nothing
  
 proximityListener() {
  //play your sound here
}
componentDidMount(){
 Proximity.addListener(this._proximityListener);
},