0

我有一个为 windows phone 7.0 构建的 windows phone 类库(用 c# 编码)。是否可以将相同的类库移植到 windows 10 mobile sdk?或者,我是否需要从头开始编写整个类库来支持 windows 10 mobile。

4

2 回答 2

0

大部分 UI 元素已从 wp7.0 更改为 Windows10。它将不得不完全重写。这同样适用于 WP 7.0 API。


如果您有便携式库,那么问题应该少得多

于 2015-07-14T07:55:34.490 回答
0

可以移植它,但不能以自动方式移植。

  • UI 组件应该相对简单,只要不使用很多第三方控件,例如 Windows Phone 的 Telerik。第三方库也需要移植到 WinRT 平台(或 UWP,正如它现在所说的那样),但情况并非总是如此。大多数 XAML 都可以重复使用,但某些命名空间、事件和属性的命名方式不同(例如:Tap 变为 Tapped)。由于缩放方法不同(Silverlight 将所有内容放大,因为它假装屏幕始终为 480 像素宽),因此某些布局可能需要重新设计。
  • HTTP 调用:这可能需要进行很多更改,具体取决于它们在 WP7 库中的实现方式。Webclient 不再存在于 WinRT 中,HttpClient 或创建自己的 HttpWebRequest 是要走的路。由于 WP7 应用程序默认没有 async/await,我建议重写这部分。
  • XML 解析:这应该是兼容的(可能是一些小的语法更改)
  • I/O 操作:可能是巨大的变化。WP7 使用了已被替换的独立存储机制。使用 CameraCaptureTask 捕获图像,基本上所有传感器的使用都必须重写。
  • 不再支持本地数据库。如果您想在应用程序中使用数据库,请使用 Sqlite。
  • WinRT 中的应用程序生命周期也完全不同。后台堆栈中的页面不会自动缓存,并且页面中的许多事件的工作方式不同,或者可能不会像在 Silverlight 应用程序中那样同时发生

了解更多信息:从 Windows Phone Silverlight 迁移到 UWP

于 2015-07-19T09:15:26.670 回答