Electron :linux 在启动系统时启动
Electron :linux start at boot up system
这是 linux 的电子应用程序。
main.js
const electron = require("electron");
const app = electron.app;
const browserWindow = electron.BrowserWindow;
const path = require("path");
const url = require("url");
let win;
function createWindow() {
win = new browserWindow({width: 800, height: 600});
win.loadURL(url.format({
pathname : path.join(__dirname,"index.html"),
protocol : "file",
slashes : true ,
}));
win.on("closed", () => {win = null;})
}
app.on("ready", createWindow);
app.on("window-all-closed", () => {
if(prcess.platform !== "darwin")
app.quit()
});
app.on ("activate", ()=> {
if(win == null)
createWindow()
});
我在 linux 中通过 npm start
启动应用程序。
问题:
i) 如何在开机时自动启动它?
ii) 实现代码的哪一部分?
我认为您不能在 Linux
中以编程方式在启动时启动应用程序
另一种方法是
添加一个启动脚本,在您登录时启动应用程序
创建一个 systemd 服务文件,它将在启动期间启动应用程序
https://www.tecmint.com/auto-execute-linux-scripts-during-reboot-or-startup/amp/
此站点提供了创建脚本的示例 (https://developer.toradex.com/knowledge-base/how-to-autorun-application-at-the-start-up-in-linux#LXSession_Autostart_File
)
此站点提供了在 electron 中创建文件的示例 (https://ourcodeworld.com/articles/read/106/how-to-choose-read-save-delete-or-create-a-file-with-electron-framework)
第一次安装electron应用可以手动创建一个文件,然后将脚本内容写入文件
喜欢
file.create(/etc/xdg/autostart/.desktop)
file.write([[桌面条目]
名称=LX终端
类型=应用程序
Exec=lxterminal
终端=假
")
或者您可以只使用 https://www.npmjs.com/package/auto-launch
如果您仍然遇到问题,那么您可以通过自动启动模块并在您的代码中实现自动启动部分
要在会话启动时自动运行 linux 中的文件,请创建一个桌面条目文件 (fileName.desktop)
[Desktop Entry]
Name= app_name
Comment= comment_optional
Icon= app_icon
Exec= your file path
Terminal=false
Type=Application
将其保存在 /.config/autostart/
或 /etc/xdg/autostart/
中
然后该文件将在系统启动时自动运行。
这是 linux 的电子应用程序。
main.js
const electron = require("electron");
const app = electron.app;
const browserWindow = electron.BrowserWindow;
const path = require("path");
const url = require("url");
let win;
function createWindow() {
win = new browserWindow({width: 800, height: 600});
win.loadURL(url.format({
pathname : path.join(__dirname,"index.html"),
protocol : "file",
slashes : true ,
}));
win.on("closed", () => {win = null;})
}
app.on("ready", createWindow);
app.on("window-all-closed", () => {
if(prcess.platform !== "darwin")
app.quit()
});
app.on ("activate", ()=> {
if(win == null)
createWindow()
});
我在 linux 中通过 npm start
启动应用程序。
问题:
i) 如何在开机时自动启动它?
ii) 实现代码的哪一部分?
我认为您不能在 Linux
中以编程方式在启动时启动应用程序另一种方法是
添加一个启动脚本,在您登录时启动应用程序
创建一个 systemd 服务文件,它将在启动期间启动应用程序
https://www.tecmint.com/auto-execute-linux-scripts-during-reboot-or-startup/amp/
此站点提供了创建脚本的示例 (https://developer.toradex.com/knowledge-base/how-to-autorun-application-at-the-start-up-in-linux#LXSession_Autostart_File )
此站点提供了在 electron 中创建文件的示例 (https://ourcodeworld.com/articles/read/106/how-to-choose-read-save-delete-or-create-a-file-with-electron-framework)
第一次安装electron应用可以手动创建一个文件,然后将脚本内容写入文件
喜欢
file.create(/etc/xdg/autostart/.desktop)
file.write([[桌面条目]
名称=LX终端
类型=应用程序
Exec=lxterminal
终端=假 ")
或者您可以只使用 https://www.npmjs.com/package/auto-launch
如果您仍然遇到问题,那么您可以通过自动启动模块并在您的代码中实现自动启动部分
要在会话启动时自动运行 linux 中的文件,请创建一个桌面条目文件 (fileName.desktop)
[Desktop Entry]
Name= app_name
Comment= comment_optional
Icon= app_icon
Exec= your file path
Terminal=false
Type=Application
将其保存在 /.config/autostart/
或 /etc/xdg/autostart/
然后该文件将在系统启动时自动运行。