我正在用电子创建本地应用程序。为此,我创建了一个BrowserWindow并使用nodeIntegration false将URL加载到其中。在我的网站中,如果在浏览器中打开,一切正常。但是,如果我在电子设备上运行相同,则屏幕共享无法正常工作。我尝试使用一些在线参考来实现它,例如使用“ preload”加载js文件。但是什么都行不通
我正在为此使用最新的Electron。
main.js
const {app, BrowserWindow} = require('electron');
const path = require('path');
let mainWindow
function createWindow () {
// Create the browser window.
mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: false,
allowRunningInsecureContent: true,
preload: path.join(__dirname, 'loadScripts.js')
}
});
mainWindow.loadURL("https://abc.xyz.com/dkajd");
mainWindow.webContents.openDevTools();
}
app.on('ready', createWindow);
app.on('activate', function () {
if (mainWindow === null) createWindow()
});
loadScript.js
const { desktopCapturer } = require('electron');
let mediaSources = null;
desktopCapturer.getSources({ types: ['window', 'screen'] },(err, sources) => {
mediaSources = sources;
});