将原生移动开发与Xamarin相结合

时间:2014-09-30 11:29:15

标签: c# xamarin.ios xamarin xamarin.android

假设我们已针对不同平台(iOS / Android / Winfon(未来))实施了移动应用程序。所有应用程序都有一些共同的业务逻辑。

例如,计算器应用程序:用户输入两位数字,我们的应用程序应该能够添加它们。因此,在每个应用程序中,我们将有一些类来进行添加。像这样的东西(用c#写的只是为了演示):

class CalculatorService
{
    public int Add(int value1, int value2)
    {
        return value1 + value2;
    }
}

每个应用程序都将复制此逻辑。目标是避免这种重复。

经过一些研究,我引起了对Xamarin的注意。现在,我希望有一个用Xamarin构建的库,用c#编写,将被不同的移动应用程序引用和使用。但是,我仍然不想完全将我的应用程序移植到Xamarin(例如,我的计算器应用程序是由我的朋友开发的,我想让他忙于这个新流程。)

所以,简而言之:是否有可能以原生方式开发移动应用程序,而是将业务逻辑移到单独的c#-xamarin库中?如果是,那么它会有多复杂?

或者,如果我使用Xamarin,我注定要将现有解决方案移植到c#?

1 个答案:

答案 0 :(得分:1)

Xamarin提出的唯一技术要求是应用程序的入口点必须是托管的Main方法(Xamarin提供本机main方法,并且需要在此时运行代码)。

一个极端的例子(但完全可能)只有一个托管方法(Main),它调用你自己的本机库来做其他事情。

Xamarin.iOS和Xamarin.Android都支持使用自定义本机库,您将拥有的工作流程是从您的本机代码创建本机库,然后在Xamarin.iOS | Android项目中使用。< / p>

Binding iOS libraries for Xamarin.iOS
Binding Android libraries for Xamarin.Android

相关问题