1

将 MonoDroid 应用程序升级到 java Android 应用程序和/或 HTML/js 应用程序的最佳方法是什么?例如,该项目有一堆 .axml 文件,当您查看它们时,它们只是 .xml Android 布局文件,将 .xml 样式/选择内容放入 Drawable 中,而 .cs 文件显然只是 C# 中的 Android,例如 AsyncTasks 等. 现在,Web References 文件夹必须是服务/AJAX 调用。像这样的东西:CFM.Service.User、Web References.Service.Reference.cs、Version=0.0.0.0、Culture=neutral、PublicKeyToken=null

如何在 Java 或 javascript 中为此编写代码?离开这个 c# 代码库并进入 Java Android 应用程序或 HTML/js(例如 PhoneGap)应用程序的最佳方法是什么?有人做过吗?

类似的 [未回答] 问题: Call SOAP webservice(Made in .NET) through JavascriptHow to call .NET WSDL call in jQuery Javascript?

4

1 回答 1

0

不会。迁移到其中任何一个基本上都是重写。Xamarin 中的 C# 代码完全与 Android 集成,并且与使用 Java 编写的代码完全平行;因此,一个既懂 C# 又懂 Java 的职业中期程序员可以做到这一点。即 AsyncTasks、ProgressDialogs、Java 中使用的所有正常的东西以及 Android 提供的东西也都是从 Xamarin 调用的。

布局和其他资产不会被重写:只需根据 android Java 构建的限制(小写等)重命名它们。可以查看 ./obj/Debug/android/src 并查看 Java 类的完整树,因此可以将其用作起始参考。这些只是 DLL 的代理;因此,如果要迁移到 Java,这不是最终解决方案。如果出于某种原因想要将 Java 和 C# 集成到 Android 中,我确实怀疑有人可以在这里混用 Java 代码。这可能很有趣。(或者使用 Intents 可能是一种更符合 Android 标准的方法。)

其他答案是正确的,Xamarin IDE 是一流的 IDE,运行良好。特别是如果一个人也有 .net 服务作为应用程序的后端(菜单单击将 wsdl 导入可调用的类,易于查看两个项目中的代码等)。

简短的回答是 Xamarin 可以很好地让您编写 C# 并生成 Android 应用程序。

于 2013-07-06T11:50:22.493 回答