109

是否可以使用 C# 编写 Android 应用程序?有 API 之类的吗?个人和商业开发是否免费?

我需要安装什么才能在我的 Visual Studio 中拥有 android 项目模板?

4

7 回答 7

83

使用过 Mono,我不会推荐它。Mono 运行时与您的应用程序捆绑在一起,因此您的 apk 最终会膨胀到超过 6MB。C# 更好的编程解决方案是dot42。Mono 和 dot42 都是许可产品。

就个人而言,我建议在IntelliJ IDEA开发环境中使用 Java。我这么说有3个原因:

  1. 已经有很多适用于 Android 的 Java 代码了。帮自己一个忙,不要重新发明轮子。
  2. IDEA 与 Visual Studio 非常相似,可以轻松学习;它由JetBrains制造,智能感知优于VS。
  3. IDEA 是免费的。

我已经做了 12 年的 C# 程序员,并开始使用 C# 为 Android 开发,但最终跳槽并走 Java 路线。这些语言非常相似,您真的不会注意到太多的学习曲线。

PS 如果你想使用 C# 原生的 LINQ、序列化和其他方便的特性,那么你只需要寻找等效的 java 库。

于 2013-02-26T00:02:39.053 回答
62

你可以使用Mono for Android

http://xamarin.com/monoforandroid

另一种选择是dot42

http://www.dot42.com/

dot42 提供免费的社区许可证和专业许可证,价格为 399 美元。

于 2012-06-09T15:14:28.183 回答
21

这是一个新的(注:在技术预览阶段): http: //www.dot42.com

它基本上是一个 Visual Studio 插件,可让您将 C# 代码直接编译为 DEX 代码。这意味着没有运行时要求,例如 Mono。

披露:我在这家公司工作


更新:所有来源现在都在https://github.com/dot42

于 2013-01-14T14:31:29.767 回答
8

Mono Touch 就是答案。

http://xamarin.com/monotouch

于 2012-06-09T15:14:21.107 回答
6

我使用 Unity 3D 游戏引擎为 PC 和手机开发游戏。我们在此开发中使用 C#。

于 2013-04-03T08:06:38.717 回答
5

您应该尝试运行 Mono(它与 .NET 兼容)。

对于游戏开发,我推荐unity:http ://unity3d.com/

一般应用:http: //xamarin.com/monoforandroid

于 2012-06-09T15:15:01.343 回答
3

确实有适用于 Android 的 C# 编译器。尽管我更喜欢用 Java 开发 Android 应用程序,但我还是推荐 MonoForAndroid。您可以在http://xamarin.com/monoforandroid上找到更多信息

于 2012-06-09T15:16:47.847 回答