【问题标题】:Migrate existing UWP app to work as Xamarin APP迁移现有 UWP 应用以用作 Xamarin APP
【发布时间】:2022-01-13 10:30:22
【问题描述】:

我有现有的 UWP 应用,现在我想迁移到 Xamarin,以便可以在 Android 设备上运行它们。最可行和/或最实用的方法是什么?

在某些情况下,我还希望继续在 Microsoft 设备上运行这些应用程序。我不希望有两个代码库需要维护,但这可能是某些应用程序的一个选项。 MS Apps Store 中提供了一些应用程序。

UWP 应用的架构相对简洁,具有单独的层和物理项目,将 UI 与数据访问、逻辑等分开。

更糟糕的情况是,我可以从头开始创建一个新的 (Xamarin) 项目和 UI,但是其他项目/层呢?我有哪些选择?例如。复制和粘贴 - 保留旧代码/解决方案(如有必要,用于未来基于 UWP 的支持),在新 Xamarin 解决方案(使用新 Xamarin UI)中创建旧(非 UI)代码/项目的副本。

这篇帖子How do I add Xamarin Forms to an existing UWP XAML app? 讨论了“多种类型的 Xamarin 代码共享策略和 UI 策略”,但没有提供任何细节或参考。

这篇帖子Adding UWP option to Xamarin cross-platform application 似乎在谈论相反的做法:采用 Xamarin 应用并将其作为 UWP 交付。

【问题讨论】:

  • 这太宽泛了,无法在 SO 上回答。您可以轻松地就该主题写一整本书。在不了解您的应用程序的情况下,这是不可能的。如果它与数据、域和服务层一起构建得很好,那么这些可能可以在 Xamarin 应用程序中重用,而且工作量很少。任何 UI 都可能需要重写。
  • 很难问出你不知道的问题。我不是在寻找详尽的详细策略列表,只是一个高级选项列表(简短甚至单行的解释都可以)。

标签: xamarin uwp xamarin.android migration xamarin.uwp


【解决方案1】:

最可行和/或最实用的方法是什么?

目前,没有工具可以直接将 UWP 应用程序转换为 Xarmain 应用程序。根据您的描述,您将需要创建一个新的 Xamarin 应用,以使您的应用在 Android 和 Windows 上都可用,甚至在 IOS 上也可用。

您可以为您的场景构建一个Xamarin.Forms 应用程序。 Xamarin.Forms 允许开发人员从单个共享代码库构建 Xamarin.iOS、Xamarin.Android 和 Windows 应用程序。正如@Jason 所提到的,如果您的应用程序具有数据、域和服务层的良好架构,那么这些可能可以在 Xamarin.Forms 应用程序中重用。 Xamarin.Forms 应用程序会将代码转换为每个平台上的高性能本机控件。所以你不需要为每个平台为相同的功能编写额外的代码。

【讨论】:

    猜你喜欢
    • 2017-10-23
    • 1970-01-01
    • 2010-09-10
    • 1970-01-01
    • 2017-02-05
    • 2021-12-18
    • 1970-01-01
    • 1970-01-01
    • 2015-10-27
    相关资源
    最近更新 更多