1

我有一个 C# 网络协议库(大约 5000 LOC),我想在 android 应用程序中重用它。该协议可能会在未来发生变化。

有什么好方法可以做到这一点?

  • 将库移植到 Java/Android?
  • 像这样使用某种 C# 到 Java 转换器。使用源代码构建 Java 库并在我的 Android 应用程序中使用它?
  • 使用 Xamarin.Android (monodroid) 构建一个 android 服务并编写一个使用该服务的本机 Android 应用程序?
  • 其他选择?!
4

1 回答 1

1

如果您正在寻找制作 Android 应用程序并且不需要使用 Java,那么 Xamarin.Android 是一个非常好的解决方案。构建应用程序的方式与使用 Java 几乎相同。你还有资源文件和axml文件等。主要区别是你使用C#而不是Android。

还有一些轶事表明 .NET VM 比 Android 的 Dalvik JVM 运行得更快。因此,您的 C# 代码可能会比 Java 端口运行得更快。

Xamarin Studio 的 Alpha 通道最初支持 PCL,因此如果您已经将库作为 PCL,那么插入它可能会变得非常容易。

您可能想查看此讨论以了解 C# 与 Java 的优缺点: Android 开发中的 MonoDroid VS Java?

您还可以使用此网站扫描您的库,以查看它对移动设备的友好程度: http ://scan.xamarin.com/

于 2013-07-18T13:09:24.213 回答