2017-10-30 1 views
-1

hier ist eine Sache, ich versuche, einige einfache "Viber like" App zu machen, alles was ich brauche, ist VoIP "Chat", und ich dachte, es wäre nett, WebRTC dafür zu verwenden, denn warum nicht (Wenn Sie etwas besseres haben, zögern Sie nicht, mich wissen zu lassen), Problem ist, dass ich 5+ Tage verbrachte, um es herauszufinden, aber ich tat nicht, ich kann keine Lösung finden, und egal, was ich mache, bekomme ich "DOMException " Error.Reagieren Native WebRTC - DOMException

Ich verwende Reagieren Nativ:

"dependencies": { 
    "react": "16.0.0-beta.5", 
    "react-native": "0.49.3", 
    "react-native-webrtc": "^1.58.3" 
    } 

Hier einige meiner Code ist:

// try: #1 
getUserMedia({ audio: true, video: false }) 
    .then((stream) => { 
     console.log(stream); 
    }).catch((err) => { 
     console.log(err); 
    }) 

// try: #2 
getUserMedia({ 
    audio: true, 
    video: true 
}, (stream) => { 
    console.log(stream); 
}, (error) => { 
    console.log(error); 
}) 

// try: #3 
MediaStreamTrack.getSources((sourceInfos) => { 
    console.log(sourceInfos); 
    let videoSourceId; 
    for (const i = 0; i < sourceInfos.length; i++) { 
     const sourceInfo = sourceInfos[i]; 
     if (sourceInfo.kind == "video" && sourceInfo.facing == (isFront ? "front" : "back")) { 
      videoSourceId = sourceInfo.id; 
     } 
    } 
    getUserMedia({ 
     audio: true, 
     video: { 
      mandatory: { 
       minWidth: 500, 
       minHeight: 300, 
       minFrameRate: 30 
      }, 
      facingMode: (isFront ? "user" : "environment"), 
      optional: (videoSourceId ? [{ sourceId: videoSourceId }] : []) 
     } 
    }, function (stream) { 
     localStream = stream; 
     console.log("Got Local Stream"); 
     callback(stream); 
    }, (error) => { 
     console.log("Get LocalStream Fail: ", error); 
    }); 
}) 

enter image description here

Antwort

0

Es scheint, dass die treatement von sourceInfos ist nicht nach der Aufzählung. Sie sollten getSources() aufrufen, dann (treatement of sourceInfos).

Wie dem auch sei, betrachten the deprecation of MediaStreamTrack.getSources

+0

thx für die Antwort, werde ich es versuchen Sie es später bin ich, dass jetzt tun nicht in der Lage, aber ich, was ich habe sourceInfos, ich meine, ich Reihe von Geräten und Material bekommen, sowieso ty I wird es sofort testen und Sie wissen lassen –