Распространение приложения UWP в App Center (он же Mobile Center) с помощью задачи VSTS

В настоящее время я работаю вместе с Microsoft над случаем, когда одно из ваших приложений UWP падает после запуска. После долгих отладок в msbuild я понял, что сбой происходит только тогда, когда полученный файл appxbundle распространяется через Microsoft App Center (он же Mobile Center). Это также только тот случай, когда appxbundle загружается в App Center со встроенной задачей VSTS "Распространение App Center".

Когда я загружаю appxbundle вручную с помощью портала App Center, все работает нормально, даже если используется через App Center.

Кроме того, я заметил, что размер appxbundle составляет 18 МБ после сборки, но только 14 МБ при загрузке в App Center с помощью задачи VSTS (размер показан на портале App Center). Файл не поврежден после загрузки, но, похоже, отсутствуют некоторые файлы в комплекте - что делает эта задача? Открытие и изменение appxbundle? uhhhhhh.

У кого-нибудь есть похожая проблема?

2 ответа

Решение

На данный момент я обошел эту проблему, заменив встроенную задачу на CLI App Center и простой сценарий powershell для архивации.

param(
    [Parameter(Mandatory=$true)]
    [String]
    $Token,
    # Name of the App, e.g. 'org/app'
    [Parameter(Mandatory=$true)]
    [String]
    $App,
    # Name of the distribution Group, e.g. 'Collaborators'
    [Parameter(Mandatory=$true)]
    [String]
    $Group
)

$binaryFile = (Get-ChildItem MyApp_*_x64.appxbundle -Recurse).FullName
appcenter distribute release -g $Group -f "$binaryFile" -a $App --debug --token $Token

Чтобы этот скрипт работал, вам нужна последняя версия CLI App Center, которую можно найти здесь.

На агенте сборки с присутствующим менеджером пакетов NPM вы можете просто запустить npm install -g appcenter-cli установить последнюю версию. После этого вышеуказанный скрипт должен выполнить.

Я использовал Sebastian Zolg следующим образом:

- task: PowerShell@2
displayName: 'Distribute via AppCenter'
inputs:
    targetType: 'filePath'
    filePath: 'AppCenterDistributeThroughCli.ps1'
    arguments: xxxMyTokenxxxxx MyAppCenterAppSlug "Collaborators"
    workingDirectory: '$(Build.ArtifactStagingDirectory)\AppxPackages'

А также AppCenterDistributeThroughCli.ps1 это Sebastian Zolg.

Другие вопросы по тегам