【问题标题】:How do I create a cross platform Xamarin mobile app project?如何创建跨平台 Xamarin 移动应用项目?
【发布时间】:2016-03-16 10:01:38
【问题描述】:

我预计这篇文章会有很多人为我付出,但这只是解决我的问题的方法,因为 xamarin 文档对我来说太乱了,它没有提供一条直线给我。

现在我的问题是,我如何创建可以跨两个平台的项目。我下载了 xamarin,但是 xamarin 没有为我提供任何能够针对这两个平台的项目,如图所示

我能做的是,在我的视觉工作室中创建以 IOS 为目标的项目,但是在 xamarin 工作室本身无法实现它。既然这样做了,我是否需要在我的 Visual Studio 中编写 IOS 代码,并在 xamarin 中编写 android 代码?如果是这样,跨平台的目的是什么?由于我必须在两个工作室中编写代码,我想要的只是在一个工作室中编写代码,并部署在两个平台上

【问题讨论】:

标签: android ios xamarin xamarin.ios


【解决方案1】:

您可以在单个解决方案中拥有 Xamarin.Android 和 Xamarin.iOS 项目,并使用 MVVM 设计模式、PCL (Portable Class Libraries)Shared Projects 拥有具有通用业务逻辑的 code sharing。对于共享代码中平台特定代码的情况,可以使用inversion of control

您尝试尽可能多地压缩通用代码,因此您只需实现两次 GUI(Android 和 iOS)

或者您可以使用 Xamarin.Forms 代码库为所有支持的平台创建单个 UI

【讨论】:

  • 也就是说,如果我在两个平台上开发,我必须在两个工作室中编写代码?如果我在xamarin studio和vs上使用,如果我将代码从xamarin复制到vs,代码可以重用吗?
  • 另外,即使我打开一个共享项目,问题是我仍然无法定位ios平台,只有android平台在新项目选择那里。
  • 如果您使用 xamarin Studio 或 Visual Studio,则无关紧要。如果您创建一个解决方案并使用我上面提到的要点进行代码共享,您将获得一个跨平台的 xamarin 应用程序
  • 但只能在vs中实现对吧? xamarin studio 本身只能开发android而已
  • Xamarin Studio 也可以开发 iOS 应用程序。但是你需要一台 Mac 来为 VS 和 Xamarin Studio 开发 iOS 应用
【解决方案2】:

您必须需要网络中的 Mac 才能以本机或跨平台方式开发 Xamarin.iOS 项目。

您可以使用 Xamarin Studio便携共享AndroidiOS /strong> 方式。

通过使用 VS,您也可以将您的项目指向 Windows Phone


参考:

【讨论】:

    最近更新 更多