我是一名ios开发人员,我们有一个要求,我们必须在ios和android中开发应用程序(使用 Map ,GPS跟踪,图表),我们计划使用Xamarin跨平台进行开发,以便我们可以编写通用的业务逻辑对于这两个项目,
根据我的研究,不建议将xamarin.forms用于需要更多平台特定功能的应用,例如 Map ,GPS跟踪,图表
根据我的研究,我发现Xamrin.ios和xamarin.android是实现更多平台特定功能的最佳方法
我的问题是,Xamarin.ios和xamarin.android他们是2个单独的项目吗?我可以在这些之间分享业务逻辑吗?根据我在xamarin.ios和xamrin.android中的理解,我们将调用我们的本机ios / android API和框架,因此我们无法共享代码,对吗?
如果我们不使用Xamarin.forms,我们可以在xamarin(Xamarin.ios / xamarin.android)中共享代码吗?如果我们使用xamarin.ios / xamrin.android而不是使用obj c / Java进行Native开发,那么Wat会带来什么好处?
1 回答
您可以在单个解决方案中使用Xamarin.android和Xamarin.iOS项目,并使用MVVM设计模式PCL (Portable Class Libraries)和linked source files使用code sharing具有通用业务逻辑 . 对于共享代码中特定于平台的代码,可以使用inversion of control
您尝试尽可能多地挤压公共代码,因此您只需要实现两次GUI(Android和iOS)