Автор оригинала: FreeCodeCamp Community Member.
Андреа Занинь
Давайте столкнемся к этому: большинство пользователей не вернутся на ваш сайт и загружают обновления для вашего совершенно нового электронного приложения. Вместо этого вы должны поместить какую-то автоматическую систему обновления.
К сожалению, онлайн-документация для этого не очень легко найти и не следовать. Здесь я проверю вас быстрым процессом для настройки автоматического обновления, используя GitHub в качестве хоста.
Настройка репозитория
Чтобы публиковать от вашего имени, Electron-Builder нуждается в Github Access Token. Если вы не знаете, что это или как создавать один, проверить Github Краткое руководство Отказ
Electron-Builder нужен токен с доступом к области REPO. Создайте один, как описано в ссылке, и скопируйте его где-то в безопасности (вы только будете продемонстрировать только токен один раз!).
Настройка библиотеки
Мы собираемся использовать электрон-строитель Чтобы упаковать наше приложение, так что давайте начнем с установки его:
npm install electron-builder --save-dev
Давайте также установим Electron-Updater Для обработки автоматических обновлений:
npm install electron-updater --save
Затем нам нужно настроить вашу сборку. В Package.json Добавить этот фрагмент:
Давайте проанализируем этот бит бит:
-
РепозиторийСсылка довольно самочувствие – просто не забудьте заменить его своим! -
построитьСценарий создаст ваше приложение локально, без публикации. -
корабльСценарий будет создан и опубликовать ваше приложение.
Примечание для разработчиков реагирования : Electron-Builder и Create-React-App прилагают некоторые конфликты по умолчанию. Я создал генератор, который устанавливает приложение Electron Electron + ATV + Electlener-Builder с нулевой конфигурацией. Вы можете найти это здесь Отказ
Теперь создайте файл под названием Electron-Builder.yml Со следующим контентом:
-
AppIDНазвание вашего приложения в регистре операционной системы. Вы можете выбрать его свободно. -
провайдерЯвляется ли платформа, которая будет хранить установщик вашего приложения. -
токенэто токен доступа к Github. Замените его тем, который вы создали ранее.
Не забудьте добавить этот файл в .gitignore. Так что вы не делитесь своим токеном со всем миром! 😉
Обработка логики обновления
Теперь нам нужно настроить логику обновления в нашем электронном приложении. Интегрируйте это в ваш входной файл (обычно index.js или Electron.js ). Если вы создаете совершенно новое приложение, вы можете просто скопировать-вставить код ниже:
Модули IPC являются стандартным способом отправки сообщений между процессами в электроне. Вы можете узнать больше о них здесь Отказ
Код довольно пожелательный и обрабатывает электронную сторону обновления. Теперь мы должны уведомить пользователя.
Вот пример HTML-страницы. Он отображает кнопку, капции которой либо «не готово обновления», либо «новая версия Ready!». Когда кнопка нажала, называется метод, который говорит электрон, чтобы выйти и установить новые обновления.
И наконец, корабль
Когда вы готовы опубликовать, отредактируйте Версия поле в Package.json и запустить следующую команду:
npm run ship
Перейдите на страницу GitHub вашего репозитория и нажмите «Выпуски» (это на той же строке, что и «коммиты» и «филиал»). Там вы найдете проект релиза. Нажмите «Изменить» а затем «публиковать выпуск».
Не паникуйте, если кнопка показывает «Нет обновлений», когда вы запускаете приложение. Это будет измениться только после того, как он закончил загрузку новой версии.
Если вы хотите использовать функционирующий проект, чтобы узнать больше и начать, вы можете клонировать Это пример репозитория Отказ
Если вы нашли эту статью полезную, будьте уверены, чтобы хлопать?
Оригинал: “https://www.freecodecamp.org/news/quick-painless-automatic-updates-in-electron-d993d5408b3a/”