![]() |
|
| Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
«
Tema Anterior
|
Siguiente tema
»
|
|
Herramientas |
|
#1
|
||||
|
||||
|
Programar para android SIN java
¿que alternativas hay a los que no programamos en Java, y a ser posible, que sea gratis?
He visto Basic4Android, que está muy bien para los desarrolladores VB6 Mono4Android, para los que desarrollan C#. ambas son de pago. Alguna más? |
|
|
|
#2
|
||||
|
||||
|
App inventor, que es gratis.
Aunque por lo visto no se le puede poner publi... |
|
#3
|
||||
|
||||
|
Puedes usar el NDK para programar en C++
He probado los 2 SDK que has puesto, y Basic4Android es fantástico, en este mismo foro tienes una versión "registrada" de la 1.50 por si quieres probarlo, se programa bastante fácil y tiene bastante potencia. En cambio Mono4Android me parece una soberana mierda, lo único que hace es crearte la ilusión de que estás programando como si fuese Microsoft C#.NET creando los proyectos desde Visual Studio y con sintaxis de C#. Pero el código es exactamente igual que si fuese con el SDK Java (y gratuito) de Android en Eclipse. Vamos, que las Activities, los Layouts, los Views, etc, los escribes igual que si fuese con la versión Java, solo que con "Using" en lugar de "Import", "Class Pepe : Jose" en lugar de "Class Pepe extends Jose", etc, vamos, un timo. Yo estoy esperando a que salga el Mono de verdad para Android, el que coges una apli programada para Windows Mobile, la recompilas tal cual con Mono y se la traga. |
|
#4
|
|
De todas las opciones que comentais, tan sólo Mono y el NDK son "sin Java". Basic4Android es un compilador cruzado que trabaja con Java debajo.
El Mono "de verdad" ya existe... solo que, al igual que para iPhone, es de pago. Que yo sepa no va a existir una versión gratuita. Tanto código abierto y en cuanto ven negocio no se lo piensan un momento. En cualquier caso, me parece que al no portar WPF, el proyecto Mono se puede calificar como un rotundo fracaso. En fin, que alguien me corrija si me equivoco en alguna de mis afirmaciones. No tengo la verdad absoluta, pero creo que no voy muy desencaminado. Por cierto, para portar Mono en Android, iPhone, WM, o cualquier otro, no basta con recompilar. La maquina virtual es totalmente distinta y muchas de las librerias directamente no son portables, ya que los teléfonos moviles no tienen los recursos de sus "hermanos mayores". Ya se dijo lo mismo de Java en los moviles. Es que, sencillamente, un programa de Windows, no "cabe" en un movil. Por eso se cambian cosas en estas implementaciones... para que entren. Asi que es posible hacer un programa en C# en el movil, pero no el mismo que en Windows. Incluso entre ordenadores, no se puede sencillamente ejecutar un programa de Windows en Mac o en Linux. En cuanto hacemos uso de API de Windows, el programa falla. Si no, intentad usar alguna libreria de graficos y ejecutad el programa en Linux. Cualquier cosa que use algo que sobrepase la maquina virtual pura y dura, no va. Última edición por iliberis Día 13/09/11 a las 16:59:01 Razón: Ampliar informacion |
|
#5
|
||||
|
||||
|
Cita:
Y lo que dices es cierto, Mono no es recompilación pura, requiere de mucha recodificación sobre todo si usas PInvoke (llamar a librerías de Windows), hasta tal punto que posiblemente ni puedas hacerlo. La idea era buena, pero solo con programas poco complejos. En cambio con Compact Framework es bastante raro encontrar algo que necesite llamar directamente a una función de nivel bajo. Y lo de Basic4Android, efectivamente tiene a Java por debajo y utiliza al SDK de Android para generar los ejecutables. Pero no necesitas tener ni idea de programación de Java para usarlo, solo si quieres crear librerías nuevas. |
|
#6
|
||||
|
Cita:
Cita:
Se podría hacer un .apk facilmente. Es tan solo el paquete instalador de Android, lo mismo que los CAB en WM o los MSI en Windows. Pero siempre seria un EXE con sus DLL, dependiendo de la maquina virtual Mono (que se instala por separado). Asi que, tecnicamente, seria un apk que contiene un EXE que se ejecuta sobre un "emulador". No hay otra manera, porque Mono es una maquina virtual de .NET multiplataforma, y .NET está pensado de esa forma. Basicamente lo mismo que Java. Incluso C# se parece de forma descarada a Java, jejeje. ¿Inconvenientes? Haced un "hola mundo" en Compact Framework, a ver lo que se "come" del teléfono. El EXE ocupa nada, pero hay que instalar la maquina virtual... y eso se lleva medio telefono por delante. En Java hay el mismo problema, pero al menos la maquina virtual es parte del sistema operativo, asi que no contamos con ese espacio "extra" para nada. Yo creo que, en dispositivos donde los recursos son taaaaan escasos, Mono no va a ser buena solución. Y encima es cara. Cita:
Cita:
En cualquier caso, volviendo al tema central de este hilo, de Java no nos libramos, aunque sea "camuflado", como en Basic4Android. Yo ODIO Java, pero C es un lenguaje demasiado complejo para cosas "de andar por casa" (es la opcion en juegos, por ejemplo), Mono es demasiado grande, y Basic4Android apenas tiene soporte de la comunidad. En el 99% de los foros de programacion de Android no puedes entrar y preguntar "¿Como se hace X en Basic4Android?" Es en otros entornos y los programadores de VB están MUY mal vistos. Ya se sabe... el mercado. De todas formas, yo animo a los que aun lo están pensando, a aprender Java. Para Android basta con unos conocimientos minimos (los mismos que se necesitan de base para C#), y a la hora de la verdad, se le saca mas partido en otros entornos, tanto a nivel personal (aficionados), como a nivel profesional (no hablemos de ofertas de trabajo) |
|
#7
|
||||
|
||||
|
En primer lugar, agradecer vuestras respuestas y soluciones.
Yo vengo desarrollando con VB6 desde hace muchos años, y ahora estoy migrando a C#, con el inconveniente que lleva: un lenguaje nuevo donde algunas cosas complicadas en VB6 son muy fáciles en C#, y alreves. Podía haber elegido Java en lugar de C#, sí, pero .... esque a Java le tengo un poco de manía, de ahí que me decidí por C#. Si llego a saber que Android está soportado casi en exclusiva por Java, quizás hubiera pensado mi decisión, pero creo q ahora ya es tarde. Estoy bastante interesado en WPF y C# como para cambiar. Respecto a Basic4Android, creo que es una magnifica opció, y aun siendo de pago. A ver cómo consigo esa versión .... "registrada" .... |
|
#8
|
|
|
Cita:
Se parecen mucho, dale una oportunidad. Te saldrán aplicaciones mucho mejores que con Basic4Android o similares. |
|
#9
|
||||
|
||||
|
Yo creo que si sabes C# sabes java, de hecho creo que si sabes un lenguaje los sabes todos (dentro del mismo paradigma de programacion), quizás la única excepcion sea vb, si has comenzado por aprender vb ... bueno, para widows va muy bien
Yo tambien odiaba java, pero ahora lo llevo bastante bien, solo que es lento (como lo es C#). En cualquier caso C# y java son lo mismo, seguramente se podría incluso construir un traductor automatico entre uno y otro lenguaje. Programar enteramente en C con el ndk, no lo veo viable ni útil. En teoría se puede, pero si alguien lo hace que venga y me lo cuente, a ver si es porque no sabe java o porque es un pirao como los que programan en widows enteramente en ensamblador. |
|
#10
|
||||
|
||||
|
Cita:
|
| Respuesta |
Estás aquí
|
||||||
|
||||||
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 08:50:37 (GMT +1)
HTCMania: líderes desde el 2007






