如何使用 geckofx 启用 webrtc ?
我试过了
var perm = Xpcom.CreateInstance<nsIPermissionManager>("@mozilla.org/permissionmanager;1");
nsIURI pwcom = Xpcom.CreateInstance<nsIIOService>("@mozilla.org/network/io-service;1").NewURI(new nsAUTF8String("https://apprtc.appspot.com"), null, null);
perm.Add(pwcom, "camera", 1, 0, 0);
perm.Add(pwcom, "video-capture", 1, 0, 0);
perm.Add(pwcom, "audio-capture", 1, 0, 0);
允许站点使用getUserMedia,但仍然不能使用任何webrtc演示站点(如https://apprtc.appspot.com)
我正在使用 GeckoFX 29.0.10
PS 我已经包含了一个只发出的 nsIConsoleListener
2014-11-10 214218 consoleListener.Observe:[JavaScript 错误:“TypeError:window.arguments 未定义”{文件:“chrome://global/content/alerts/alert.js”行:42}]
2014-11-10 214219 consoleListener.Observe:[JavaScript 错误:“NS_ERROR_NOT_IMPLEMENTED:”{文件:“chrome://global/content/alerts/alert.js”行:77}]
alert.js是否用于提示请求webrtc使用哪个设备?
最佳答案
这对我有用:
Gecko.Xpcom.Initialize(@"******************");
GeckoPreferences.User["plugin.state.flash"] = true;
GeckoPreferences.User["browser.xul.error_pages.enabled"] = true;
GeckoPreferences.User["media.navigator.enabled"] = true;
/* The following line is the key: */
GeckoPreferences.User["media.navigator.permission.disabled"] = true;
通过禁用导航器权限,它会自动接受请求,而不会弹出对话框。
测试代码:
GeckoWebBrowser myBrowser = new GeckoWebBrowser();
this.Controls.Add(myBrowser);
myBrowser.Dock = DockStyle.Fill;
myBrowser.Navigate("http://davidwalsh.name/demo/camera.php");
问候,
丹尼尔
关于c# - 如何将 getUserMedia 与 geckofx 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26853571/