Будет ли Google Android поддерживать .NET?

Теперь, когда G1 с ОС Android от Google теперь доступен (скоро), платформа Android будет поддерживать .NET.

Ответ 1

Обновление. Поскольку я написал этот ответ два года назад, мы выпустили Mono для запуска на Android. Эта работа включала в себя несколько шагов: перенос Mono на Android, интеграцию с Visual Studio, создание плагинов для MonoDevelop на Mac и Windows и предоставление Java API для Android на языках .NET. Это теперь доступно на http://monodroid.net

Mono на Android основан на среде исполнения Mono 2.10 и по умолчанию имеет профиль 4.0 с компилятором С# 4.0 и использует новый механизм сбора мусора Mono, а также нашу новую распределенную систему сбора мусора, которая выполняет GC через Java и Mono.


Ниже приведены ссылки Mono на Android по состоянию на январь 2009 года, я сохранил их для исторического контекста

Mono теперь работает на Android благодаря работе Koushik Dutta и Marc Crichton.

Вы можете увидеть видеоролик о нем: http://www.koushikdutta.com/2009/01/mono-on-android-with-gratuitous-shaky.html

И вы можете получить инструкции по созданию Моно здесь: http://www.koushikdutta.com/2009/01/building-mono-for-android.html

Вы можете получить сравнительный тест, в котором сравнивают интерпретатор Monit JIT vs Dalvik: http://www.koushikdutta.com/2009/01/dalvik-vs-mono.html

И, конечно же, вы можете получить предварительно сконфигурированное изображение с Mono (в нижней части сообщения для получения подробной информации об использовании этого): http://www.koushikdutta.com/2009/01/building-mono-for-android.html

Ответ 2

Да, это будет возможно, и это будет не так сложно. Все, что необходимо в этот момент для начала, - это какой-то конвертер, который превратит MSIL в байт-код Dalvik , Поскольку оба формата доступны с открытым исходным кодом и хорошо документированы, проблем с ним не будет.

Итак, запись приложений Android на С# или VB.NET будет возможной, вопрос в том, какая часть стандартных библиотек .NET Framework будет поддерживаться. Но это еще одна проблема.

Оскар Рейес написал:

     

Я уверен, что если google hand ANY   Интерес к .net, они бы спроектировали   Что-то, пока Android был в   Первые этапы, а не сейчас, когда они находятся в   Стадии производства. Я не имею в виду, что это   Я не могу сказать, что я говорю   Они не заинтересованы. Возможно в mmm   Hhhh 10 лет.

На самом деле то, что они уже разработали, очень совместимо с Java и .NET

Они не могут делать все сразу, но если вы посмотрите на Android SDK, появится инструмент dx. Этот инструмент преобразует байт-код Java в байт-код Dalvik, поэтому, другими словами, вы можете запускать программы, написанные на Java на Android, без каких-либо усилий. Теперь для .NET нужен тот же инструмент.

Учитывая, насколько похожи .NET и Java, это действительно вопрос времени.

ddimitrov wrote:

     

Перевод .Net-> Java-> Dalvik может   Сделать уже сейчас   ( http://dev.mainsoft.com/), но я   Что вы недооцениваете отсутствие   .Net. Конечно, кто-то может   Порт Mono, но это определенно   Нетривиальное усилие.

Не нужно переносить моно. Android уже имеет VM и некоторые базовые API. Все, что нужно, - это конвертер CIL-> Dalvik и крошечная .NET-оболочка для Android API (а может быть, и базовая реализация некоторых стандартных классов .NET). Вот и все.

Обновление:. .NET уже работает на Android - вам понадобится продукт под названием Monodroid ( http: // monodroid .net), как указано выше.

Ответ 3

Мигель де Икаса объявил о своем блоге 17-го числа Feb 2010, что они начинают работу над mono для android, который будет называться MonoDroid.

Это будет похоже на MonoTouch на iphone, но для Android.

Он обеспечит привязку к пользовательскому интерфейсу Android, поэтому приложения будут выглядеть и чувствовать себя в прямом эфире. Это потребует от вас написать специфический пользовательский интерфейс для Android.

Однако вы сможете повторно использовать существующие библиотеки нижнего уровня без необходимости перекомпилировать.

Ответ 4

Так как это одна из первых ссылок на Google при поиске для поддержки Android и .net, уместно опубликовать это здесь.

Монопроект работает над SDK для разработки приложений Android с использованием языков CIL, таких как С#. С другой стороны, это будет коммерческий продукт. monodroid

Ответ 5

Есть Mono для Android, платформа .NET перенесена на Android. И есть MonoDroid, стек разработки для использования С# и основных .NET API для разработки приложений на базе Android. MonoDroid Preview 1 был выпущен пару дней назад.

Ответ 6

MonoDroid доступен для предварительного просмотра. Я думаю, что это преодолеет разрыв. Однако MonoDroid может стать дорогостоящим вариантом для разработки. Их другие инструменты для разработки стоят от $ 199 до $ 4000 (The MonoTouch .. iPhone dev tool ... по цене от 399 до 3999 долларов). Если люди разрабатывают приложения с помощью этих инструментов, им нужна очень сильная бизнес-модель, чтобы увидеть некоторые прибыли.

Ответ 7

Проверьте это xmlvm Я думаю, что это возможно. Возможно, вы также можете проверить этот видео

Ответ 8

Измененный порт Моно также вполне возможен.

Ответ 9

.NET compact framework был перенесен на ОС Symbian ( http://www.redfivelabs.com/ ). Если .NET как «закрытую» платформу можно портировать на эту платформу, я не вижу причин, почему это невозможно сделать для Android.

Ответ 10

.NET и Mono - отличная среда, со многими инструментами и отличной базой навыков людей, которые знают, как их использовать.

Я думаю, что Mono имеет возможность быть мобильной кросс-платформенной средой разработки, поскольку они являются единственной альтернативой Objective-C на iPhone и должны быть переносимыми на Android, а .NET уже на Windows Mobile .

Я действительно надеюсь увидеть надежную реализацию Mono на Android с обертками для Android API, как с Monotouch, и буду готов заплатить за это, так как я не в состоянии сделать это сам.

Ответ 11

Вы, скорее всего, увидите реализацию Silverlight от Android. Представитель Microsoft подтвердил, что это возможно, по сравнению с iPhone, где представитель сказал, что это проблематично.

Но возможна версия .Net framework. Просто нужно, чтобы кто-то очень заботился об этом:)

Но на самом деле переход от С# к Java не так уж важен и учитывая резкие различия между двумя платформами (ПК и G1), кажется маловероятным, что вы сможете обойтись с одной кодовой базой для Любое приложение, которое вы хотели запустить на обоих.

Ответ 12

По моему мнению, было бы технически возможно преобразовать Bytecode CLI в Dalvik и написать классы-оболочки для некоторых основных функций, таких как коллекции, доступ к файлам и т.д., Даже если это будет тяжелая работа.

Но настольное приложение .NET, запущенное на Android, будет чужда, поскольку у него будет классический графический интерфейс Windows-Like, который не очень удобен на сенсорном устройстве. Если, с другой стороны, вы должны были кодировать андроид-подобный графический интерфейс в .NET, вам понадобится другой набор оболочек (обратите внимание, что упаковка просто противоположна оберткам, упомянутым выше).

Я не уверен, будет ли мобильное приложение .NET чувствовать себя родным на Android, но я бы предположил, что это не так.

Возможно, вы заинтересованы в другом подходе: вы можете написать свое приложение на языке Java. Затем вы можете скомпилировать его на .NET с помощью Microsoft J # (я знаю, что он прекращен, но вы все равно можете его загрузить и использовать) и использовать тот же Java-код на Android. Опять же, это для основных классов, а также бизнес-логики, и вам снова придется писать графические интерфейсы. Возможно, вы также можете связать J2ME, чего вы не сможете сделать, если используете .NET.

Ответ 13

.NET для Android кажется реальной возможностью для меня. Появилась новость о том, что Microsoft выпустит соответствующий Silverlight для Android. Никогда не недооценивайте преимущества Microsoft для установки загрузки в Apple. Смартфон, который работает быстрее, обладает большей функциональностью, более быстрым жизненным циклом разработки, впечатляющим оборудованием, Flash & Silverlight стандартно устанавливается.

Microsoft заинтересована в усовершенствовании Android, и в то же время будут разработаны приложения для Silverlight на Android, которые также будут работать на ОС Windows Phone 7 с поддержкой multi-touch, GPS и т.д. И т. Д.