Разработка Android-приложения с использованием С#

Можно ли написать приложение для Android с помощью С#? Есть ли API или что-то еще? Является ли он бесплатным для личного и коммерческого развития?

Что мне нужно установить, чтобы иметь шаблон проекта Android в моей Visual Studio?

Ответ 1

Вы можете использовать Mono for Android:

http://xamarin.com/monoforandroid

Альтернативой является dot42:

http://www.dot42.com/

dot42 предоставляет бесплатную лицензию сообщества, а также профессиональную лицензию на сумму 399 долларов США.

Ответ 2

Используя Моно, я бы не рекомендовал его. Mono runtime поставляется вместе с вашим приложением, поэтому ваш apk заканчивается раздутой более чем на 6 МБ. Лучшим программным решением для С# будет dot42. Как Mono, так и dot42 являются лицензированными продуктами.

Лично я бы рекомендовал использовать Java с IntelliJ IDEA. Я говорю это по трем причинам:

  • Существует так много Java-кода для Android уже; сделайте себе одолжение и не изобретайте колесо.
  • IDEA достаточно похожа на Visual Studio, чтобы стать языком cinch; это сделано JetBrains, а intelli-sense лучше VS.
  • IDEA является бесплатной.

Я был программистом на С# в течение 12 лет и начал развиваться для Android с С#, но закончил прыгать с корабля и перешел на Java-маршрут. Языки настолько похожи, что вы действительно не заметите большую часть кривой обучения.

P.S. Если вы хотите использовать LINQ, сериализацию и другие удобные функции, которые являются родными для С#, вам просто нужно искать эквивалентную библиотеку java.

Ответ 3

Вот новый (Примечание: на этапе предварительного просмотра): http://www.dot42.com

Это в основном надстройка Visual Studio, которая позволяет скомпилировать ваш код С# непосредственно с кодом DEX. Это означает, что нет требований времени выполнения, таких как Mono.

Раскрытие информации: я работаю в этой компании


UPDATE: все источники теперь находятся на https://github.com/dot42

Ответ 5

Я использовал единство 3D-игрового движка для разработки игр для ПК и мобильного телефона. Мы используем С# в этой разработке.

Ответ 6

Вы должны попробовать что-то работающее Mono (совместимое с .NET).

Для развития игры я рекомендую единство: http://unity3d.com/

для общих приложений: http://xamarin.com/monoforandroid

Ответ 7

Есть действительно компиляторы С# для Android. Хотя я предпочитаю разрабатывать Android Apps на Java, я могу порекомендовать MonoForAndroid. Вы найдете дополнительную информацию о http://xamarin.com/monoforandroid