Google Android nunca support.NET? [cerrado]


Ahora que el G1 con el sistema operativo Android de Google ya está disponible (pronto), ¿la plataforma Android alguna vez soportará. Net?

Author: Jon Clements, 2008-10-18

13 answers

Update: Desde que escribí esta respuesta hace dos años, producimos Mono para que se ejecute en Android. El trabajo incluyó algunos pasos: portar Mono a Android, integrarlo con Visual Studio, crear complementos para MonoDevelop en Mac y Windows y exponer las API de Java Android a lenguajes.NET. Ahora está disponible en http://monodroid.net

Mono en Android se basa en el tiempo de ejecución Mono 2.10, y el valor predeterminado es el perfil 4.0 con el compilador C# 4.0 y utiliza el nuevo motor de recolección de basura Sgen de Mono, así como nuestro nuevo sistema de recolección de basura distribuido que realiza GC en Java y Mono.


Los enlaces a continuación reflejan Mono en Android a partir de enero de 2009, los he mantenido para histórico context

Mono ahora funciona en Android gracias al trabajo de Koushik Dutta y Marc Crichton.

Puedes ver un video de esto corriendo aquí: http://www.koushikdutta.com/2009/01/mono-on-android-with-gratuitous-shaky.html

Y puede obtener las instrucciones para construir Mono usted mismo aquí: http://www.koushikdutta.com/2009/01/building-mono-for-android.html

Puede obtener un punto de referencia comparando JIT de Mono vs intérprete de Dalvik aquí: http://www.koushikdutta.com/2009/01/dalvik-vs-mono.html

Y, por supuesto, puede obtener una imagen preconfigurada con Mono aquí (vaya a la parte inferior de la publicación para obtener detalles sobre el uso de eso): http://www.koushikdutta.com/2009/01/building-mono-for-android.html

 325
Author: miguel.de.icaza,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-02-02 14:37:35

Sí, será posible y no será tan difícil. Todo lo que se necesita en este punto para empezar es algún tipo de convertidor que convierta MSIL en Dalvik bytecode. Dado que ambos formatos son de código abierto y están bien documentados, no habrá ningún problema con él.

Entonces, escribir aplicaciones Android en C # o VB.NET será posible, la pregunta es cuánto de las bibliotecas estándar de. NET framework serán compatibles. Pero ese es otro problema.

Oscar Reyes escribió:

Estoy bastante seguro de que si Google mano ALGUNA interés en .net, se hubiera diseño algo mientras Androide estaba en el primeras etapas, no ahora cuando están en etapas de producción. No quiero decir que lo sea. no es posible, lo que estoy diciendo es no están interesados. Tal vez en mmm hhhh 10 años.

En realidad lo que ya han diseñado es muy compatible con Java y. NET

No pueden hacer todo a la vez, pero si nos fijamos en Android SDK, hay una herramienta llamada dx. Esta herramienta convierte el bytecode Java en el bytecode Dalvik, por lo que en otras palabras, puede ejecutar programas escritos en Java en Android sin esfuerzo hoy en día. Ahora se necesita la misma herramienta para. NET.

Teniendo en cuenta lo similares que son.NET y Java, es realmente una cuestión de tiempo.

Ddimitrov escribió:

La traducción. Net->Java->Dalvik puede hágase incluso ahora ( http://dev.mainsoft.com / ), pero creo que subestimas el falta de .Red de bibliotecas. Por supuesto que alguien puede puerto Mono, pero es definitivamente un esfuerzo no trivial.

No es necesario portar Mono. Android ya tiene VM y alguna API básica. Todo lo que se necesita es CIL - > Dalvik converter y tiny. NET wrapper para Android API (y tal vez alguna implementación básica de algunas clases estándar de.NET). Eso es.

Actualización: . NET ya funciona en Android: necesitará un producto llamado Monodroid (http://monodroid.net ) como se indica arriba.

 78
Author: lubos hasko,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-28 04:18:47

Miguel de Icaza anunció en su blog el 17 de febrero de 2010 que están comenzando a trabajar en mono para android que se llamará MonoDroid.

Esto será similar a MonoTouch en el iphone, pero para Android en su lugar.

Proporcionará un enlace a la interfaz de usuario de Android, por lo que las aplicaciones se verán y se sentirán como aplicaciones nativas de Android en vivo. Esto requerirá que escribas una interfaz de usuario específica de Android.

Sin embargo, podrá reutilizar las bibliotecas de nivel inferior existentes sin la necesito recompilar.

 23
Author: trampster,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-06-18 13:12:31

Existe Mono para Android, el.NET framework portado para Android. Y está MonoDroid, una pila de desarrollo para usar C # y las API principales de. NET para desarrollar aplicaciones basadas en Android. MonoDroid Preview 1 ha sido lanzado hace un par de días.

 9
Author: MonoDroid,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-08-20 08:58:26

Dado que este es uno de los primeros enlaces en Google cuando se busca soporte para Android y.net, solo es apropiado publicar esto aquí.

El proyecto mono está trabajando en un SDK para desarrollar aplicaciones Android utilizando lenguajes CIL como C#. El lado negativo es que será un producto comercial. monodroid

 9
Author: Tony,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-06-20 13:51:21

MonoDroid está disponible para la vista previa. Creo que eso cerrará la brecha. Sin embargo, MonoDroid podría ser una opción costosa para el desarrollo. Sus otras herramientas de desarrollo cuestan entre 1 199 y 4 4000 (El MonoTouch .. Herramienta de desarrollo de iPhone ... tiene un precio entre $399 y 3 3999). Si las personas desarrollan aplicaciones con estas herramientas, necesitan un modelo de negocio muy fuerte para ver algunos retornos.

 7
Author: GSree,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-01-08 11:28:42

Check this out xmlvm creo que esto es posible. Puede ser también puede comprobar este video

 6
Author: Poorna,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-06-20 13:53:07

Un puerto modificado de Mono también es completamente posible.

 4
Author: akdom,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-18 06:09:17

. NET compact framework ha sido portado a Symbian OS ( http://www.redfivelabs.com/). Si. NET como una plataforma 'cerrada' se puede portar a esta plataforma, no puedo ver ninguna razón por la que no se puede hacer para Android.

 4
Author: KevinD,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-11-17 11:14:49

. NET y Mono son grandes entornos, con muchas herramientas y una excelente base de habilidades de personas que saben cómo usarlos.

Creo que Mono tiene la oportunidad de ser el entorno de desarrollo multiplataforma móvil de elección, ya que son la única alternativa a Objective-C en el iPhone y deberían ser portátiles para Android, y.NET ya está en Windows Mobile.

Realmente espero ver una implementación sólida de Mono en Android, con envoltorios para la API de Android como con Monotouch, y estaría dispuesto a pagar por ello ya que no estoy en condiciones de hacerlo yo mismo.

 4
Author: Peter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-01-24 12:49:59

Es más probable que veas una implementación de Silverlight para Android. Microsoft rep ha confirmado que es posible, vs.el iPhone donde el representante dijo que era problemático.

Pero es posible una versión de.Net framework. Solo necesito a alguien que se preocupe por eso:)

Pero en realidad, pasar de C # a Java no es tan importante y teniendo en cuenta las drásticas diferencias entre las dos plataformas (PC vs. G1) parece poco probable que puedas arreglártelas con una código base para cualquier aplicación que quieras ejecutar en ambas.

 3
Author: jcollum,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-12-16 22:51:41

En mi opinión, sería técnicamente posible convertir el código de bytes de la CLI a Dalvik, y escribir clases de envoltura para algunas características principales como Colecciones, acceso a archivos, etc. incluso sería un trabajo duro.

Pero una aplicación de escritorio.NET ejecutada en Android se sentiría alienígena, ya que tendría una interfaz gráfica de usuario clásica similar a Windows que no es muy utilizable en un dispositivo táctil. Si, por otro lado, fuera a codificar una interfaz gráfica de usuario similar a Android en. NET, necesitaría otro conjunto de envoltorios (observe que el envoltorio es justo al revés opuesto a los envoltorios mencionados anteriormente).

No estoy seguro de si una aplicación móvil. NET se sentiría nativa en Android, pero supongo que no lo haría.

Tal vez le interese otro enfoque: Puede escribir su aplicación en el lenguaje Java. A continuación, puede compilar a.NET a través de Microsoft J# (sé que está descontinuado, pero todavía se puede descargar y utilizar) y utilizar el mismo código Java en Android. Una vez más, eso es para las clases básicas aka lógica de negocios y de nuevo tendría que escribir GUI de remolque. Tal vez también puedas etiquetar J2ME, lo que no podrás hacer si usas .NET.

 3
Author: Lena Schimmel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-03 19:41:49

. NET para Android me parece una posibilidad real. Hay noticias de que Microsoft lanzará adecuado Silverlight para Android-Nunca subestimar las ventajas de Microsoft para poner el arranque en Apple. Un teléfono inteligente que es más rápido, más rico en funciones, ciclo de vida de desarrollo más rápido, hardware impresionante, Flash y Silverlight como instalable estándar.

Microsoft tiene un interés personal en mejorar Android, y al mismo tiempo, las aplicaciones se desarrollarán para Silverlight en Android también funcionará en Windows Phone 7 OS con multi-touch, GPS, etc., sucesivamente.

 2
Author: Mark,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-08-18 22:02:19