0

I am building Calling app, includes:

1.PushKit VOIP to show incomming call 2.React-native-callkeep to handle answer/end call 3. React-native-webrtc to make the call

The problem is:

1.With app state active/background. The call working normally

2.Only with case app locked + app not running. I can not see the microphone in top of screen, then I think I can not access into the microphone(tested with audio call)

About my code: I am getMediaDivices in useEffect() like this:

 useEffect(() => {
        ....
        getMediaStream()
     return () => {
            mounted.current = false
            ....
        }

    }, [])


  const getMediaStream = async () => {
        if (!localMediaStream) {
            let isFront = true
            let stream = await mediaDevices.getUserMedia({
                audio: {
                    echoCancellation: true,
                    noiseSuppression: true,
                    autoGainControl: true,
                    googEchoCancellation: true,
                    googAutoGainControl: true,
                    googNoiseSuppression: true,
                    googHighpassFilter: true,
                    googTypingNoiseDetection: true,
                    googNoiseReduction: true
                },
                video: isVideo ? {
                    width: { min: 480, max: 1280},
                    height: { min: 320, max: 720 },
                    // vb: true,
                    frameRate: 25,
                    facingMode: (isFront ? 'user' : 'environment'),
                } : false
            })
            setlocalMediaStream({
                publisher: {
                    id: currentUserName,
                    userId: masterInfo.user.id,
                    displayName: masterInfo.user.name
                },
                stream: stream,
            })
            await initJanus(stream)
        }
    }



I dont know why the green dot not appear in case 3, can someone help?

famfamfam
  • 396
  • 3
  • 8
  • 31

0 Answers0