Изображение внутри папки с двухбуквенным именем ('bg') исчезает при упаковке в виде приложения UWP - PullRequest
0 голосов
/ 21 октября 2018

У меня действительно странная проблема при создании приложения для Windows 10 UWP.Когда я тестирую на своем устройстве как в режиме отладки, так и в режиме выпуска, изображение, установленное в качестве фона, выглядит идеально.Размеры изменяются и т. Д.

Однако, когда я упаковываю приложение в процессе подготовки к развертыванию магазина и устанавливаю пакет для тестирования, изображения отображаются белым.

Вот код, о котором идет речь:

  mainGrid.Background = new ImageBrush { ImageSource = new BitmapImage(new Uri(@"ms-appx:///Assets/bg/" + Config.bgImage + ".jpg")), Stretch = Stretch.UniformToFill };

Что меня больше всего смущает, так это то, что он работает в режиме отладки / выпуска, но завершается сбоем только тогда, когда выпущен в виде пакета.

Изображение установлено как «Содержимое» и «Всегда копировать»,

Есть идеи?

Заранее спасибо!

1 Ответ

0 голосов
/ 22 октября 2018

За комментарий это происходит из-за того, что папка имеет имя bg и проект настроен на создание «комплекта» (т. Е. Основного пакета, а затем отдельного пакета для каждого языка).

Что бы там ни было, система упаковки предполагает, что любой каталог с двухбуквенным именем является языковым кодом (например, «en» или «de»), и поэтому предполагает, что ресурсы являются специфическими для этого языка.Эти активы помещаются в отдельный пакет, который устанавливается, только если это применимо для текущего пользователя.

Если у вас есть большое количество активов, и вы их локализуете, использование пакета по-прежнему является хорошим подходом кминимизируйте размер приложения и время загрузки, и в этом случае вам нужно будет изменить имя каталога на что-то более длинное (технически вы можете сами управлять упаковкой, но это требует много работы ... переименование, вероятно, проще).

Но если вы не локализуете / не слишком беспокоитесь о вздутии приложения, тогда создание отдельного пакета - это хорошо.

...