Есть ли способ автоматизировать сборку пакетов для магазина Windows? (Я использую jenkins на моем сервере сборки) Я хотел бы подготовить пакет для Windows Store без взаимодействия с пользователем на сервере сборки. Код проверки электронной почты, создание для .NET родного и набора приложений для набора сертификатов, и все материалы GUI занимают слишком много времени, и я бы хотел автоматизировать этот процесс. Интересно, возможно ли это или нет.Автоматизация сборки пакетов в хранилище UWP
ответ
Позвольте мне поделиться своим опытом создания действительного пакета приложений UWP, который можно загрузить в Windows Store с помощью командной строки MSBuild. Это поколение может быть сделано в три этапа:
Шаг 1: Свяжите приложение с витринах - Visual Studio требуется
С Visual Studio выберите проект, щелкните правой кнопкой мыши, чтобы отобразить контекстное меню. Выберите меню «Сохранить», а затем «Associate App Store, с»:
Этот шаг требует, чтобы войти в систему с учетными данными Дев Microsoft. После входа в систему вы назначаете резервное имя для своего приложения и связываете свое приложение с магазином Windows. Этот магазин объединение, которое должно быть сделано только один раз создаст два важных файлов, необходимых для создания и подписания вашего приложения пакета:
- Package.StoreAssociation.xml
- MyApp_StoreKey.pfx
Шаг 2: Редактировать файл манифеста приложения (Package.appxmanifest)
Этот шаг не является обязательным. Файл манифеста содержит номер версии (атрибут версии тега <Identity>
). Перед созданием новой версии вашего приложения вам необходимо обновить этот атрибут.
Шаг 3: Сформировать приложение пакет с MS Строить
Открыть консоль CMD с переменными среды Visual Studio, необходимых MsBuild.To этого откройте скрипт VsDevCmd.bat расположен в VS_INSTALL_DIR \ Common7 \ Tools.
Введите следующую командную строку:
MSBuild \ MyApp.csproj/р:. Конфигурация = Release, AppxBundle = Всегда, AppxBundlePlatforms = "x86 | x64 | ARM"/р: BuildAppxUploadPackageForUap = истина
Эта команда:
- компилировать ваш проект в режиме выпуска
- целевой x86, x64 и ARM платформы
- генерировать пучок пакет с именем MyApp_1.0.0.0_x86_x64_ARM_bundle.appxupload, которые могут быть загружены вручную в окне Dev центр
В итоге вы можете создать UWP пакет приложения с помощью инструмента командной строки. Но прежде чем это сделать, вам нужно связать свое приложение с магазином Windows.
Построение этой командной строки по-прежнему я вижу «Генерирование собственного кода» в журнале построения –
Я только что опубликовал blog post о том, как добиться этого, в том числе образец проекта Github
ndelabarre утверждает следующее:
Шаг 1: Свяжите приложение с витринах (Visual Studio 2015 требуется)
Но это неверно. Единственное, что делает VS, это изменить 2 файла. Это может быть полностью автоматизировано и может быть найдено в part IV моей серии блога.
Я установил оба Дженкинса и Бамбука, используя этот подход. Это облегчило мою жизнь, так как настройка можно легко портировать (изменить только 1 файл) из одного приложения в другое.
Это работает с .NET-родной toolchain? – SamuelDebruyn
1) Использование MSbuild: Откройте «Командная строка разработчика» для vs2015 -> запустите cmd: «msbuild youprojname.csproj/p: Configuration = Release» Вы можете написать скрипт для запуска этой команды. 2) Если вы не хотите использовать Visual Studio IDE, вам необходимо использовать автономные инструменты, такие как MakeAppx и т. Д., Чтобы упаковать себя. Однако, делая это, вы должны сами определить все необходимые среды зависимостей. –
Тогда в чем разница между Store-> Create App Packages и Build? –
В строке cmd MSBuild создаст пакет автоматически. Однако в IDE msbuild не будет создавать пакет до тех пор, пока не будет выбран пакет «Crt App Package». вы можете обратиться к этому сообщению MSDN: https://social.msdn.microsoft.com/Forums/windowsapps/en-US/4727e1e3-50f1-4835-8c09-131066963474/visual-studio-create-app-package-command- line? forum = toolsforwinapps –