2024.11.14
いまさらNode.jsを知ろう~環境構築も~
2018.05.04
プログラミングAndroid WebViewのWebRTCでマイクが解放されない
坂東です。
WebViewなWebRTCを使ったアプリがあるとします。
これはWebViewがマイクを握りっぱなしになってるからです。
ネイティブ実装側で AudioManager.abandonAudioFocus などで開放していたつもりですが、それでは不十分なようです。
WebView側でも URL.revokeObjectURL とか removeChild とか undefined にして一生懸命開放しようとしています。
でもコレじゃ足りなくて、「自分のMediaStream.getAudioTracks()[0].stop() 」をやらなきゃいけなかったようです。
もろもろ解放するお作法はこうですね。
// 自分側 myStream.getAudioTracks()[0].stop() URL.revokeObjectURL(myVideo.src) myVideo.src = '' myStream = undefined document.removeChild(myVideo) myVideo = undefined // 相手側 partnerStream.getAudioTracks()[0].stop() URL.revokeObjectURL(partnerVideo.src) partnerVideo.src = '' partnerStream = undefined document.removeChild(partnerVideo) partnerVideo = undefined
おわり。
【記事への感想募集中!】
記事への感想・ご意見がありましたら、ぜひフォームからご投稿ください!【テクノデジタルではエンジニア/デザイナーを積極採用中です!】
下記項目に1つでも当てはまる方は是非、詳細ページへ!Qangaroo(カンガルー)
【テクノデジタルのインフラサービス】
当社では、多数のサービスの開発実績を活かし、
アプリケーションのパフォーマンスを最大限に引き出すインフラ設計・構築を行います。
AWSなどへのクラウド移行、既存インフラの監視・運用保守も承りますので、ぜひご相談ください。
詳細は下記ページをご覧ください。
最近の記事
タグ検索