如何创建跨平台 Xamarin 移动应用项目?

Posted

技术标签:

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

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

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

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

【问题讨论】:

Xamarin.iOS在Windows上开发需要用到VS; ***.com/questions/21190630/… ***.com/a/16158058/4984832 在 OS-X 上,您可以使用 XS 为 iOS 和 Android。 另外,Windows 上的 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


参考:

https://www.youtube.com/watch?v=xWyOcEpNyXQ http://www.c-sharpcorner.com/UploadFile/e4bad6/xamarin-forms-walkthrough-2-the-curious-case-of-code-shari/ https://blog.xamarin.com/contest-build-your-first-xamarin-forms-app/ https://developer.xamarin.com/guides/xamarin-forms/getting-started/introduction-to-xamarin-forms/

【讨论】:

以上是关于如何创建跨平台 Xamarin 移动应用项目?的主要内容,如果未能解决你的问题,请参考以下文章

微软收购跨平台移动应用开发商Xamarin

微软收购跨平台移动应用开发商Xamarin

使用Xamarin实现跨平台移动应用开发(转载)

浅谈移动应用的跨平台开发工具(Xamarin和React Native)

xamarin 形式的跨平台移动应用程序(iOS、Android)中的依赖注入

在 xamarin 跨平台移动应用程序上添加本地通知的插件或库?