Выпуск и развертывание Electron

После завершения разработки и упаковки приложения Electron его необходимо выпустить для пользователей. Способы выпуска в основном делятся намагазин приложенийиавтономное распространение, а также необходимо учитывать сервисы обновления и стратегии управления версиями.


Выпуск в App Store

Публикация в Microsoft Store

  • Требования к упаковке: Использоватьelectron-windows-storeИнструмент выполнит.exeили.msixПреобразовать в пакет Store
  • Подпись: Требуется учетная запись разработчика Microsoft и подача заявки на получение сертификата подписи кода

Рабочий процесс:

  1. Создать пакет MSIX
  2. Загрузить в Store Partner Center
  3. Заполните информацию о приложении, скриншоты и категорию
  4. Отправить на проверку

Распространение в Mac App Store

  • Требования к упаковке: Обязательно использовать.pkgили.app, и включитенотаризацию Apple
  • Подпись: Подайте заявку на сертификат разработчика с учетной записью Apple Developer

Рабочий процесс:

  1. Упакуйте и подпишите приложение
  2. Загрузите с помощью Xcode или Transporter
  3. Отправьте информацию о приложении и скриншоты
  4. Опубликуйте в магазине после одобрения проверки

Публикация в Snap Store (Linux)

Требования к упаковке: Используйте Snapcraft, чтобы упаковать приложение как.snapформат.

Рабочий процесс:

  1. Написаноsnapcraft.yamlКонфигурация
  2. Сгенерируйте пакет.snap
  3. Загрузите в Snapcraft Store
  4. Опубликуйте после одобрения проверки

Подготовка к проверке

  • Иконка приложения и скриншоты соответствуют требованиям магазина
  • Отправьте описание приложения, категорию и политику конфиденциальности
  • Обеспечьте стабильность с помощью автоматизированного или ручного тестирования
  • Не допускайте использования приложением запрещённых API или разрешений

Автономное распространение

Загрузка с официального сайта

  • Упакованная версия.exe、.dmg、.AppImageПредоставьте загрузки на официальном сайте
  • Можно комбинировать с CDN для обеспечения стабильной скорости загрузки
  • Можно предоставить проверку SHA256 или MD5 для обеспечения целостности файла

Релизы GitHub

  • Используйте GitHub Releases для загрузки установочных пакетов для каждой платформы
  • Можно интегрировать electron-updater для реализации автоматических обновлений
  • Преимущества: бесплатно, простое управление версиями

Распространение через CDN

  • CDN рекомендуется для приложений с высоким трафиком
  • Обеспечивает быструю загрузку между регионами
  • В сочетании с сервером автоматических обновлений для реализации дифференциальных обновлений

Настройка службы обновлений

Используйте сторонние сервисы

  • Сервис предоставляет хостинг автоматических обновлений, например:

    • GitHub Releases + electron-updater
    • AWS S3 + CloudFront
    • Статический хостинг Netlify / Vercel

Самостоятельно размещённый сервер обновлений

  • Разверните простой HTTP- или HTTPS-сервис
  • Предоставьте JSON-файл описания обновления (содержащий номер версии, URL загрузки, список изменений)
  • Поддерживайте дельта-обновления, чтобы сократить объём загружаемого пользователями трафика

Примерlatest.ymlФайл:

version: 1.0.2
files:
  - url: MyElectronApp-1.0.2.exe
    sha512: "文件哈希值"
releaseDate: "2025-10-15T00:00:00Z"

Стратегия управления версиями

  • Semantic versioning(SemVer):Major version.Minor version.Revision number
  • Стратегия выпуска:

    • Минорные версии: исправление ошибок
    • Мажорная версия: добавление новых функций или изменений пользовательского интерфейса
  • Стратегия автоматического обновления:

    • Проверять обновления при запуске
    • Периодический опрос обновлений
    • Пользователь запускает вручную

Итог

Основной процесс публикации и развёртывания Electron:

  • Магазин приложений: строгая проверка, подписывание и требования к упаковке для платформ
  • Автономное распространение: загрузка доступна с официального сайта, GitHub Releases и CDN
  • Служба обновлений: автоматические обновления, дифференциальные обновления, стратегии управления версиями

Благодаря разумным стратегиям выпуска и обновления вы можете гарантировать, что пользователи получают последние, стабильные и безопасные версии приложения, одновременно улучшая пользовательский опыт и эффективность сопровождения приложения.

Другие расширения