react-native-webrtc / react-native-webrtc/react-native-callkeep

The getAudioRoutes changes the selected audio route

Open Beginner friendly
#540 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
1.1k
Forks
511
Avg merge
9h 12m
Merged PRs (30d)
2

Description

Bug report

  • I've checked the example to reproduce the issue.

  • Reproduced on:

  • Android

  • iOS

Description

If there is an active session and I call the getAudioRoutes() it changes the audio route, because there is a setCategory executed in the getAudioInputs https://github.com/react-native-webrtc/react-native-callkeep/blob/1c798d66e459abce943aedcc419838cf9c3fc29e/ios/RNCallKeep/RNCallKeep.m#L516

https://developer.apple.com/documentation/avfaudio/avaudiosession/1616583-setcategory?language=objc

There is any workaround to avoid this type of behavior?

Steps to Reproduce

  1. Start a call
  2. Get the audioRoutes: call getAudioRoutes()
  3. Set an other audio route: call setAudioRoute()
  4. Get the audioRoutes again and this will change the setted audio route

Versions

- Callkeep: 4.3.2
- React Native: 0.64
- iOS: 15.2
- Android:
- Phone model: iPhone 6s Plus, iPhone 12

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in ios/RNCallKeep/RNCallKeep.m at the getAudioInputs code linked by the issue, and trace how getAudioRoutes reaches it. Reproduce the sequence of starting a call, selecting a route with setAudioRoute(), and calling getAudioRoutes(). Done means querying the routes no longer changes the selected audio route.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, objective-c, react-native
Domain
audio-video-rtc, mobile
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.