есть ли способ настроить индикатор выполнения для загрузки нового обновления приложения в Electron? Я разрабатываю приложение для Windows, используя Squirrel и electron-simple-updater
, и моя проблема в том, что средство обновления выдает события только тогда, когда оно начинает загружать обновление и когда оно завершается. Мое обновление довольно большое (около 80 МБ), и для пользователей с медленными интернет-провайдерами это вроде как sux :(
Индикатор выполнения электронного автообновления
comment
Ищу то же самое, гугл не помогает ...
- person GWorking   schedule 04.05.2017
comment
То же самое ... 'загрузка-прогресс' не запускается с помощью электронного простого-обновления. Удалось найти обходной путь?
- person MarBVI   schedule 13.09.2017
comment
@MarBVI нет, я застрял здесь. Очень плохо, что если вам нужна эта простая вещь, вы должны делать всю работу самостоятельно, то есть создавать свою собственную программу обновления. Вот где, возможно, я закончу, потому что, похоже, нет жизнеспособных решений для этой проблемы :(
- person Pirozek   schedule 14.09.2017
comment
Собственно даже не могу скачать обновление. Я получаю сообщение об ошибке Не могу найти белку. Я также использую electrin-simple-updater и создаю свой .exe с помощью electronic-builder. Вы можете мне помочь?
- person MarBVI   schedule 14.09.2017
Ответы (2)
const log = require('electron-log');
const { autoUpdater } = require("electron-updater");
autoUpdater.logger = log;
log.info('App starting...');
autoUpdater.on('download-progress', (progressObj) => {
let log_message = "Download speed: " + progressObj.bytesPerSecond;
log_message = log_message + ' - Downloaded ' + progressObj.percent + '%';
log_message = log_message + ' (' + progressObj.transferred + "/" + progressObj.total + ')';
sendStatusToWindow(log_message);
})
function sendStatusToWindow(text) {
log.info(text);
homePageWindow.webContents.send('message', text);
}
С помощью этого кода можно увидеть журнал, чтобы увидеть, как идет загрузка
person
Darshan Jain
schedule
05.02.2019
ПРИМЕЧАНИЕ. Пакет
require("electron-updater")
предназначен исключительно для Electron Builder, а не для собственного Electron. Если вы не используете Electron Builder, вы не можете импортировать и использовать этот пакет, как показано здесь.
- person Joshua Pinter; 18.03.2019
Есть ли способ избавиться от всех десятичных знаков на
progressObj.percent
?
- person futurelucas4502; 22.04.2020
Может быть, эта ссылка дает то, что вы хотите
https://github.com/iffy/electron-updater-example/blob/master/main.js
autoUpdater.on('download-progress', (ev, progressObj) => {
sendStatusToWindow('Download progress...');
})
person
GWorking
schedule
04.05.2017
это не использует белку
- person CMS; 08.07.2018
Обратите внимание: похоже, это не работает с собственным автообновлением Electron: electronicjs.org/docs/api/ автоматическое обновление
- person Joshua Pinter; 17.01.2019
@joshuapinter Правильно, это не для автообновления электронов. Скорее всего, это для настраиваемого автоматического средства обновления Electron Builder.
- person Joshua Pinter; 18.03.2019