окна запускаю процесс автообновления.
// Обработчик события 'ready'
app.on('ready', () => {
// Создаем окно приложения
createWindow();
setUpdateURL();
});
function setUpdateURL(message) {
// Устанавливаем интервал для регулярной проверки обновлений
updateInterval = setInterval(message => {
if (!isDownloading) {
// Устанавливаем URL для проверки обновлений
const server = 'https://myserver.ru/releases';
updateURL = `${server}/updates/`;
// Устанавливаем свойства allowPrerelease и allowDowngrade
autoUpdater.allowPrerelease = true;
autoUpdater.allowDowngrade = true;
if (kioskId) {
// Устанавливаем URL для autoUpdater
autoUpdater.setFeedURL({ url: updateURL });
// Просто проверяем наличие обновлений, без дополнительных проверок
autoUpdater.checkForUpdates();
}
}
}, 30 * 1000); // Проверка каждые 30 секунд
}
Это вполне себе работает. Если например устанавливаю версию 2.0.0, а по пути updateURL лежит версия 2.0.1, то приложение переустановится на 2.0.1. Это ок.
Но если по пути updateURL будет лежать например версия 1.9.0 (то есть ниже текущей установленной), то уже в логах пишет "warn: CheckForUpdateImpl: hwhat, local version is greater than remote version" , хотя судя по документации autoUpdater.allowDowngrade = true должно разрешать установку предыдущих версий. Что нужно сделать, чтобы была возможность автообновлять на версии ниже?
Это при паблише делается сейчас скину, если найду
примерно вот так вот electron-builder --mac --universal --publish always always - чтобы можно было релизить любую версию может это вам поможет, не уверен
Обсуждают сегодня