Windows 10 开发 - 移植到 Windows


在本章中,我们将学习如何将现有的 Windows 8.1 应用程序移植到通用 Windows 平台 (UWP)。您可以创建一个 Windows 10 应用程序包,您的客户可以将其安装到所有类型的设备上。

将您的应用程序移植到 Windows 10 UWP 后,您的应用程序将受益于 -

  • 令人兴奋的新硬件
  • 巨大的货币化机会
  • 现代 API 集,
  • 自适应 UI 控件,
  • 自适应设计和代码
  • 一系列输入方式,例如鼠标、键盘、触摸和语音。

将 Windows 8.x 项目移植到 UWP 项目

有两个选项可将现有 Windows 8.x 应用程序移植到通用 Windows 平台 (UWP)。

选项 1 - 一种是在 Visual Studio 中创建一个新的 Windows 10 项目并将文件复制到其中。

选项 2 - 另一个选项是编辑现有项目文件的副本,包括应用程序包清单。

下面给出的是使用第一个选项时的主要步骤。

  • 启动 Microsoft Visual Studio 2015 并创建一个名为UWPBookStore 的新空白应用程序(Windows 通用)项目。

  • 您的新项目将构建一个将在所有设备系列上运行的应用程序包(appx 文件)。

  • 在您的 Universal 8.1 应用项目中,确定要重用的所有源代码文件和视觉资源文件。下面显示的是一个示例应用程序,其中包含三个项目。第一个用于 Windows,第二个用于移动设备,第三个是 Windows 和移动设备的共享项目。

  • 在手机上运行此应用程序后,您将看到以下窗口。

电话申请
  • 运行窗口应用程序后,您将看到以下应用程序。

Windows应用程序
  • 现在,打开新创建的UWP项目应用程序
UWP项目申请
  • 从共享项目中,复制包含书籍封面图像 (.png) 文件的文件夹Assets\CoverImages 。另请复制ViewModel文件夹和MainPage.xaml并替换目标中的文件。

  • 从 Windows 项目中,复制BookstoreStyles.xaml。此文件中的所有资源密钥都将在 Windows 10 应用程序中解析。等效WindowsPhone文件中的某些内容不会。

  • “解决方案资源管理器”中,确保“显示所有文件”已切换为“开”

解决方案浏览器
  • 选择您复制的文件,右键单击它们,然后单击“包含在项目中”,如下所示。

包含在项目中
  • 这将自动包含其包含的文件夹。如果您愿意,您可以将“显示所有文件”切换为“关闭” 。

  • 现在您的项目结构在解决方案资源管理器中将如下所示。

项目结构
  • 编辑刚刚复制的源代码和标记文件,将对Bookstore1_81命名空间的所有引用更改为UWPBookStore命名空间。

  • 最简单的方法是使用“在文件中替换”功能来替换名称空间。视图模型中不需要更改任何代码。

  • 现在,执行上述代码后,您可以在本地计算机以及移动设备上运行它,如下所示。

在本地机器上执行 在本地计算机上运行

现在,第二个选项是编辑现有项目文件的副本,包括应用程序包清单。从 Windows/phone 8.x 移植到 Windows 10 时,项目文件和package.appmanifest文件需要进行一些修改。

Microsoft 提供了 UWP 项目升级实用程序,这在移植现有应用程序时非常有用。该实用程序可以从github.com下载。

我们建议您逐步按照上述示例进行操作,以便更好地理解。