Портируем Приложение C#/Xaml Для Windows 8.1 На Uwp.



Портируем приложение C#/XAML для Windows 8.1 на UWP.

Если ваше приложение для Windows 8 или 8.1 небольшое, вы можете создать новый проект универсального приложения UWP и переместить в него код XAML и C#.

Если приложение содержит достаточное количество кода, то есть и другие варианты.

Чтобы перенести приложение WinRT C#/XAML для Windows 8.x в Windows UWP, необходимо изменить манифест и файл проекта.

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

Скрипт вы можете найти по следующей ссылке: GitHub Win10DevGuideMVA/ProjectUpgradeUtility Оттуда скачиваем 2 файла: Upgrade_to_uwp.ps1 — сам скрипт Run_Upgrade_to_uwp.bat — это пакетный файл для автоматического запуска сценария.

Если вы хотите сделать все вручную, вы можете воспользоваться официальной инструкцией по переносу приложения из Windows 8.1 вручную на универсальную платформу Windows (UWP): Миграция приложений на универсальную платформу Windows (UWP) С обновлением файла проекта для проверки скрипт справляется хорошо, но об обновлении манифеста я напишу подробнее.

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

уап: Следующий код манифеста

  
  
  
  
   

<Application> <Extension Category="windows.protocol"> <Protocol Name="mailto" DesiredView="useHalf"> <DisplayName>MailTo Protocol</DisplayName> </Protocol> </Extension> </Application>

Превращается в

<Application> <uap:Extension Category="windows.protocol"> <uap:Protocol Name="mailto" DesiredView="useHalf"> <uap:DisplayName>MailTo Protocol</uap:DisplayName> </uap:Protocol> </uap:Extension> </Application>

Некоторые атрибуты необходимо удалить.

Пример:

<m2:VisualElements DisplayName="App1" Square150x150Logo="Assets\Logo.png" Square30x30Logo="Assets\SmallLogo.png" Description="some description" BackgroundColor="#464646" ForegroundText="light" ToastCapable="true"> <m2:SplashScreen Image="Assets\SplashScreen.png" /> <m2:DefaultTile ShortName="MyApp" Wide310x150Logo="310x150.png" Square310x310Logo="310x310.png" Square70x70Logo="70x70.png" DefaultSize="square150x150Logo"> </m2:DefaultTile> <m2:ApplicationView MinWidth="width320" /> </m2:VisualElements>

Из этого кода нам нужно удалить: ForegroundText="светлый" ToastCapable="истина" DefaultSize="квадратный150x150логотип" Кроме того, вам необходимо изменить размеры тайлов (не забудьте также заменить файлы изображений).

В коде манифеста Square30x30Logo заменяется на Square44x44Logo, а Square70x70Logo заменяется на Square71x71Logo. Например:

<m2:VisualElements DisplayName="App1" Square150x150Logo="Assets\Logo.png" Square30x30Logo="Assets\SmallLogo.png" Description="some description" BackgroundColor="#464646"> <m2:SplashScreen Image="Assets\SplashScreen.png" /> <m2:DefaultTile ShortName="MyApp" Wide310x150Logo="310x150.png" Square310x310Logo="310x310.png" Square70x70Logo="70x70.png"> </m2:DefaultTile> </m2:VisualElements>

Изменить на

<uap:VisualElements DisplayName="App1"

Теги: #портирование #портирование #Windows #uwp #1.0 #update #applications #портирование #манифест #Разработка для Windows Phone #C++ #Разработка для Windows

Вместе с данным постом часто просматривают: