Есть ли способ автоматизировать сборку пакетов для магазина Windows? (Я использую jenkins на моем сервере сборки) Я хотел бы подготовить пакет для Windows Store без взаимодействия с пользователем на сервере сборки. Код проверки электронной почты, создание для .NET родного и набора приложений для набора сертификатов, и все материалы GUI занимают слишком много времени, и я бы хотел автоматизировать этот процесс. Интересно, возможно ли это или нет.
Автоматизация сборки пакетов хранилища UWP
Ответ 1
Позвольте мне поделиться своим опытом создания действительного пакета приложений UWP, который можно загрузить в Windows Store с помощью командной строки MSBuild. Это поколение может быть выполнено в три этапа:
Шаг 1: Свяжите свое приложение с Windows Store - требуется Visual Studio
В Visual Studio выберите свой проект, щелкните правой кнопкой мыши, чтобы отобразить контекстное меню. Выберите меню "Сохранить", затем "Связать приложение с магазином":
Этот шаг требует входа в систему с вашими учетными данными Microsoft dev. После входа в систему вы назначаете резервное имя для своего приложения и связываете свое приложение с магазином Windows. Эта ассоциация магазина, которая должна быть выполнена только один раз, создаст два важных файла, необходимых для создания и подписания вашего пакета приложений:
- Package.StoreAssociation.xml
- MyApp_StoreKey.pfx
Шаг 2: Отредактируйте файл манифеста приложения (Package.appxmanifest)
Этот шаг является необязательным. Файл манифеста содержит номер версии (атрибут версии тега <Identity>
). Перед созданием новой версии вашего приложения вам необходимо обновить атрибут этой версии.
Шаг 3: Создайте пакет приложений с помощью MS Build
Откройте консоль CMD с переменными среды Visual Studio, необходимыми для MsBuild. Для этого откройте script VsDevCmd.bat, расположенный в VS_INSTALL_DIR\Common7\Tools.
Введите следующую командную строку:
MSBuild.\MyApp.csproj/p: Configuration = Release; AppxBundle = Always; AppxBundlePlatforms = "x86 | x64 | ARM" /p: BuildAppxUploadPackageForUap = true
Эта команда будет:
- скомпилируйте свой проект в режиме выпуска
- целевые платформы x86, x64 и ARM.
- сформировать пакет пакетов с именем MyApp_1.0.0.0_x86_x64_ARM_bundle.appxupload, который можно загрузить вручную в центр windows dev
В заключение вы можете создать пакет приложений UWP с помощью инструмента командной строки. Но прежде чем это сделать, вам нужно связать свое приложение с хранилищем Windows.
Ответ 2
Я только что опубликовал сообщение в блоге о том, как это сделать, включая пример проекта Github
ndelabarre утверждает следующее:
Шаг 1: Свяжите свое приложение с Windows Store (требуется Visual Studio 2015)
Но это неверно. Единственное, что делает VS, это изменить 2 файла. Это может быть полностью автоматизировано и можно найти в часть IV моей серии блога.
Я установил и Jenkins и Bamboo, используя этот подход. Это облегчило мою жизнь, так как настройка можно легко портировать (изменить только 1 файл) из одного приложения в другое.